您将如何格式化此代码?我知道在定义函数之前应该有两个换行符。为了便于阅读,您会在if new_requests_objectid > 0:
之后再换一次换行符吗?在def assign_uniquekey_request():
或assign_uniquekey_request()
之后呢?
或许它的方式很好。
if new_requests_objectid > 0:
# get last data object from Request table
last_request = Popen(['curl',
'-H', 'application-id: %s' % backendless_appid,
'-H', 'secret-key: %s' % backendless_sk,
'-H', 'application-type: REST',
'-H', 'Content-Type: application/json',
'-X', 'GET',
'-v', 'https://api.backendless.com/v1/data/Request/last'],
stdout=PIPE).communicate()[0]
last_request_str = last_request.decode(encoding='utf-8')
last_objectid = json.loads(last_request_str, strict=False)['objectId']
# generate unique key for last entry in Request table
uniquekey_request = ''.join(random.SystemRandom().choice(string.ascii_uppercase + string.digits)
for _ in range(6))
# assign unique key to last entry in Request table
def assign_uniquekey_request():
Popen(['curl',
'-H', 'application-id: %s' % backendless_appid,
'-H', 'secret-key: %s' % backendless_sk,
'-H', 'application-type: REST',
'-H', 'Content-Type: application/json',
'-X', 'PUT',
'-d', '{\"requestId\":\"%s\"}' % uniquekey_request,
'-v', 'https://api.backendless.com/v1/data/Request/%s' % last_objectid])
assign_uniquekey_request()
else:
pass
答案 0 :(得分:1)
来自PEP 0008:
使用两个空行环绕顶级函数和类定义。
类中的方法定义由一个空行包围。
可以使用额外的空白行(谨慎地)来分隔相关功能组。在一堆相关的单行(例如,一组虚拟实现)之间可以省略空行。
谨慎地在函数中使用空行来表示逻辑部分。
您的代码的换行格式看起来很好。请参阅以下示例:
class A:
def __init__(self):
pass
def actions(self):
if 1:
pass
else:
pass
print(1)
print(37)
print(22)
return
请注意,换行规则是严格定义的,如果您在交互式解释器中工作,则不遵循此准则,您只需要在刚完成写入的块时添加额外的换行符。上面的类需要像这样输入解释器:
>>> class A:
... def __init__(self):
... pass
... def actions(self):
... if 1:
... pass
... else:
... pass
... print(1)
... print(37)
... print(22)
... return
...
>>>