我不知道怎么用英语来解释,但是:
inputText = "John Smith 5"
我想把它拆分,然后把它插入到NAMAREAR中,并把5(string)变成整数。
nameArray = ["John", "Doe", 5]
然后将namearray放置到fullnamearray
fullNameArray = [["John", "Doe", 5], ["John", "Smith", 5]]
最佳答案
使用异常处理并在此处int()
:
>>> def func(x):
... try:
... return int(x)
... except ValueError:
... return x
...
>>> inputText = "John Smith 5"
>>> spl = [func(x) for x in inputText.split()]
>>> spl
['John', 'Smith', 5]
如果确定它始终是最后一个必须转换的元素,请尝试以下操作:
>>> inputText = "John Smith 5"
>>> spl = inputText.split()
>>> spl[-1] = int(spl[-1])
>>> spl
['John', 'Smith', 5]
使用
nameArray.append
将新列表附加到它:>>> nameArray = [] #initialize nameArray as an empty list
>>> nameArray.append(["John", "Doe", 5]) #append the first name
>>> spl = [func(x) for x in inputText.split()]
>>> nameArray.append(spl) #append second entry
>>> nameArray
[['John', 'Doe', 5], ['John', 'Smith', 5]]