我有一长串代码,我希望在多行之间分解.我使用什么,语法是什么?
例如,添加一串字符串,
e = 'a' + 'b' + 'c' + 'd'
Run Code Online (Sandbox Code Playgroud)
并将它分成两行:
e = 'a' + 'b' +
'c' + 'd'
Run Code Online (Sandbox Code Playgroud) 如何格式化符合PEP8的长断言语句?请忽略我的例子的人为性质.
def afunc(some_param_name):
assert isinstance(some_param_name, SomeClassName), 'some_param_name must be an instance of SomeClassName, silly goose!'
Run Code Online (Sandbox Code Playgroud)
无法将其包装在括号中,因为它会更改assert语句的行为,因为它是关键字,而不是内置函数.
>>> li = [1, 2, 3, 4]
>>> li
[1, 2, 3, 4]
>>> del li[2] #case 1
>>> li
[1, 2, 4]
>>> del(li[2]) # case 2
>>> li
[1, 2]
>>> del (li[1]) # case 3
>>> li
[1]
>>>
Run Code Online (Sandbox Code Playgroud)
我的一位教授使用案例2从列表中删除项目.
根据python文档案例1是正确的,并且此答案中还存在另一种语法方式,因此案例3也正确,但据我所知,python中不存在del方法,案例2如何有效.我搜索了整个python文档,但找不到它.
更新: 如果我自己在我的模块中编写del方法并同时使用案例2,python解释器如何区分它们或者它将通过错误,尽管我从未尝试过
有没有像 C/CPP 中那样使用 pythonic 方式编写带有消息的断言:
assert(i <= j && "more participants than medals");
Run Code Online (Sandbox Code Playgroud)
当我尝试等效方法时,我收到 pylint 错误,这可能表明有更好的方法(?):
R1726: Boolean condition 'i <= j and "..."' may be simplified to 'i <= j' (simplifiable-condition)
Run Code Online (Sandbox Code Playgroud)