Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
一行Python代码,用于将字符串设置为0字符串(如果为空)_Python_String - Fatal编程技术网

一行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

在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(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"