我有下面的测试代码。我怎样才能使这个条件为真

时间:2019-05-11 06:10:09

标签: python python-3.x

我有以下测试代码。我怎样才能使这个条件为真。我知道a.split是Str()中的方法,但是当我将它放在变量上时,它将视为一个列表。

a="1.1.1.1/29"

aa=a.split('/')

>>aa == "29"

>>False

4 个答案:

答案 0 :(得分:1)

您可以在列表中使用

a="1.1.1.1/29"

aa=a.split('/')

>>"29" in aa

>>True

答案 1 :(得分:0)

Split确实确实将字符串拆分为子字符串,并将返回的子字符串返回到列表中。

以下条件返回True:

aa[1] == "29" 

答案 2 :(得分:0)

str.split给您一个列表,a.split('/')也给您一个列表,如果将列表与字符串进行比较,显然会失败

您需要获取列表的最后一个元素,并将其与29进行比较,以使代码按以下方式工作。

In [119]: a="1.1.1.1/29"                                                                                                                                                          

In [120]: aa=a.split('/')                                                                                                                                                         
#Gives you a string
In [121]: aa                                                                                                                                                                      
Out[121]: ['1.1.1.1', '29']
#Second element of list is 29, comparison returns True
In [122]: aa[1] == '29'                                                                                                                                                           
Out[122]: True
#List to string comparison returns False
In [123]: aa == '29'                                                                                                                                                              
Out[123]: False

但是您可以使用in运算符检查成员资格,以查看项目是否包含在字符串本身中,这将节省您拆分字符串和比较列表项目的麻烦

In [125]: a="1.1.1.1/29"                                                                                                                                                          

In [126]: '29' in a                                                                                                                                                               
Out[126]: True

答案 3 :(得分:0)

str.split()将“通过指定的分隔符分割原始字符串后返回字符串列表。

a = '1.1.1.1/29'
aa = a.split('/') # aa is now ['1.1.1.1', '29']
subnet = aa[1] # subnet is '29'

您可以在此处了解更多信息:https://www.pythonforbeginners.com/dictionary/python-split