Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.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 如果字符串是一个特定的字符串,是否将其设为int?_Python_Python 3.x_List_List Comprehension - Fatal编程技术网

Python 如果字符串是一个特定的字符串,是否将其设为int?

Python 如果字符串是一个特定的字符串,是否将其设为int?,python,python-3.x,list,list-comprehension,Python,Python 3.x,List,List Comprehension,我有一个字符串列表,希望在列表上循环,如果列表中的值是特定字符串,则将其设为0。下面是我正在尝试但不起作用的代码: variable1 = ['None', 'One', 'Two', 'Three', 'None'] variable2 = [0 if v is 'None' else v for v in variable1] 结果应该是:[0',1',2',3',0],但它不会更改None字符串。避免是,因为它要求字符串是相同的对象。使用==使两个不同的字符串对象仍然可以进行相等的

我有一个字符串列表,希望在列表上循环,如果列表中的值是特定字符串,则将其设为0。下面是我正在尝试但不起作用的代码:

variable1 = ['None', 'One', 'Two', 'Three', 'None']   
variable2 = [0 if v is 'None' else v for v in variable1]

结果应该是:[0',1',2',3',0],但它不会更改None字符串。

避免
,因为它要求字符串是相同的对象。使用
==
使两个不同的字符串对象仍然可以进行相等的比较

variable2 = [0 if v == 'None' else v for v in variable1]

避免
,因为它要求字符串是同一个对象。使用
==
使两个不同的字符串对象仍然可以进行相等的比较

variable2 = [0 if v == 'None' else v for v in variable1]

is
更改为
=
。如果您同时看到
is
None
,并试图重复它,请注意,
None
与string
'None'
有很大不同……您希望
'None'
s是整数
0
而不是单词零,或者将其余单词也改为数字?似乎有点奇怪…将
更改为
==
。如果您看到
并试图重复它,请注意,
None
与string
'None'
有很大不同……您希望
'None'
s是整数
0
而不是单词零,或者将其余单词也改为数字?看起来有点奇怪。。。