在列表中存储int或str

Eri*_*ric 3 python

我创建了一个文本文件并使用以下命令在Python中打开它:

for word_in_line in open("test.txt"):
Run Code Online (Sandbox Code Playgroud)

循环遍历txt文件中的一行中的单词.

文本文件只有一行,即:

int 111 = 3 ;
Run Code Online (Sandbox Code Playgroud)

当我使用.split()以下列表制作时:

print("Input: {}".format(word_in_line))
line_list = word_in_line.split() 
Run Code Online (Sandbox Code Playgroud)

它创建:

 ['int', '111', '=', '3', ';']
Run Code Online (Sandbox Code Playgroud)

而我正在寻找一种方法来检查if line_list[1]('111')是否为整数.

但是,当我尝试时type(line_list[1]),它说它是str因为''.

我的目标是读取txt文件,看看它是整数还是str或其他数据类型等.

idj*_*jaw 5

你的名单中一个字符串.所以类型的来临是正确和预期的.

你要做的是检查你的字符串中是否包含所有数字.所以要使用isdigit字符串方法:

line_list[1].isdigit()
Run Code Online (Sandbox Code Playgroud)

根据您在此处尝试验证的具体情况,有些情况下您只需要纯数字,此解决方案就是这样.

可能还有其他情况需要检查您是否有某种号码.例如,10.5.这是isdigit失败的地方.对于这样的情况,你可以看一下这个答案,它提供了一种方法来检查你是否有float