使用 "in" 运算符 compare/convert 将字符串转换为 int
Using "in" operator compare/convert a string to an int
我需要查找是否在字符串列表中找到整数。
上下文 = ['4', '6', '78']
if category.id in context:
上面的代码不起作用,因为我将 int(category id) 与字符串进行比较。
我不能使用 int(context),因为 context 是一个列表,会报错。
我可以将category.id转换成字符串,但是会出现不好的情况吗?
使用 in
运算符可以将字符串转换为 int,或者我需要使用 for loop
?
您始终可以将 ID 更新为字符串,如下所示:
class cat():
def __init__(self, id):
self.id = id
category = cat(4)
context = ['4', '6', '78']
if str(category.id) in context:
print('True')
#output
True
您还可以考虑使用列表理解将 context
转换为整数列表。
context_ints = [int(i) for i in context]
if category.id in context_ints:
... do stuff ...
如果保证 context
是一个可以合理地转换为整数的字符串列表,那么这对您来说可能是最安全的途径。
我需要查找是否在字符串列表中找到整数。
上下文 = ['4', '6', '78']
if category.id in context:
上面的代码不起作用,因为我将 int(category id) 与字符串进行比较。
我不能使用 int(context),因为 context 是一个列表,会报错。
我可以将category.id转换成字符串,但是会出现不好的情况吗?
使用 in
运算符可以将字符串转换为 int,或者我需要使用 for loop
?
您始终可以将 ID 更新为字符串,如下所示:
class cat():
def __init__(self, id):
self.id = id
category = cat(4)
context = ['4', '6', '78']
if str(category.id) in context:
print('True')
#output
True
您还可以考虑使用列表理解将 context
转换为整数列表。
context_ints = [int(i) for i in context]
if category.id in context_ints:
... do stuff ...
如果保证 context
是一个可以合理地转换为整数的字符串列表,那么这对您来说可能是最安全的途径。