Python 如何精确比较字符串
我想比较两个字符串 我尝试了“in”、“is”和“is”操作符。但它不能正常工作 第1代码:Python 如何精确比较字符串,python,python-3.x,string,substring,Python,Python 3.x,String,Substring,我想比较两个字符串 我尝试了“in”、“is”和“is”操作符。但它不能正常工作 第1代码: myStrings = ['test1', 'test2', 'test3', 'test11', 'test111', 'test56'] for elem in myStrings: if 'test1' in elem: print('success') 第二代码: myStrings = ['test1', 'test2', 'test3', 'test11', 't
myStrings = ['test1', 'test2', 'test3', 'test11', 'test111', 'test56']
for elem in myStrings:
if 'test1' in elem:
print('success')
第二代码:
myStrings = ['test1', 'test2', 'test3', 'test11', 'test12', 'test56']
for elem in myStrings:
if 'test1' is elem[0:len('test1')]:
print('success')
预期:
成功只能打印一次。但它打印了3次。它还成功地与“test11”和“test12”进行了比较
对不起,我没有完全解释这个问题
列表中字符串的长度不是固定的。它是可变的。
字符串“test1”是多个字符串的子字符串
现在,在下一步中,我还想将“test11”和列表中的元素进行比较。但在这里,它正在失败。因为它与“test11”和“test111”匹配
很抱歉使用这种语言。使用==而不是is
Python中==和is运算符之间的差异。==运算符比较两个操作数的值并检查值是否相等。而is运算符检查两个操作数是否引用同一对象
关于它的帖子:
输出:
success
尝试检查列表中的元素是否等效于“test”: 输出:
使用其他运算符时发生了什么?==对我来说效果很好。将其更改为if'test1'==elem:我不确定是否可能重复。。。它不会进入if条件
success
myStrings = ['test1', 'test2', 'test3', 'test11', 'test12', 'test56']
for elem in myStrings:
if elem=='test1':
print('success')
success