一行Python代码,用于将字符串设置为0字符串(如果为空)
在python中将字符串设置为字符串的一行代码是什么,如果字符串为空,则为0一行Python代码,用于将字符串设置为0字符串(如果为空),python,string,Python,String,在python中将字符串设置为字符串的一行代码是什么,如果字符串为空,则为0 # line_parts[0] can be empty # if so, set a to the string, 0 # one-liner solution should be part of the following line of code if possible a = line_parts[0] ... 这是最优秀的Python习惯用法之一,可以轻松地提供默认值。它通常用于函数的默认值: def fn
# line_parts[0] can be empty
# if so, set a to the string, 0
# one-liner solution should be part of the following line of code if possible
a = line_parts[0] ...
这是最优秀的Python习惯用法之一,可以轻松地提供默认值。它通常用于函数的默认值:
def fn(arg1, arg2=None):
arg2 = arg2 or ["weird default value"]
如果你还想把空白看成“代码>空< /代码>,并得到结果的剥离,下面的代码将有帮助,
a = (line_parts[0] and line_parts[0].strip()) or "0"
要澄清的是,如果Ned的回答不清楚的话:当涉及到字符串时,空字符串总是计算为False,非空字符串总是计算为True——这就是为什么
或在这种情况下可以完美工作的原因。我不明白-那么在函数定义中给出默认值有什么区别:def fn(arg1,arg2=“奇怪的默认值”):?您可以这样做,但必须小心使用可变的默认值,或基于定义时可能不可用的更改数据的默认值。@biznez不要忘记您可以接受答案。我会说:应该接受答案。这只是出于礼貌,在人们代表您付出努力之后。您的意思是字符串为空(表示长度为零的字符串)或者没有?更清楚的是:a=行部分[0],如果行部分[0]为“0”
def fn(arg1, arg2=None):
arg2 = arg2 or ["weird default value"]
a = (line_parts[0] and line_parts[0].strip()) or "0"