我有一个包含字母和数字的文件,我希望将这些数字分开 我尝试了以下代码,但它失败了:
n_file = open("text.txt","br+")
num = ""
while(1):
cch = n_file.read(1)
if(len == n_len):
break
if(cch != '\n'):
n_len = n_len + 1
if(re.findall("[0-9]", cch):
num = num + text
print(num)
它说:
print("Check This",(int)cch)
^
SyntaxError: invalid syntax
答案 0 :(得分:0)
这是无效的语法,因为您正在尝试执行Java转换。尝试打印int(cch)
。
顺便说一下,你为什么要while(1)
,然后检查len == n_len
是否要break
?你为什么不在while中使用这些值呢?比如,while(n_len < len)
除此之外,您可以简化很多代码。类似的东西(我没有尝试这个代码,所以任何bug只是试图弄清楚发生了什么):
num = ''
with open("text.txt","r") as file:
for char in file.readline():
if char.isdigit():
num += char
print int(num)
我不知道你是否想要读取文件,直到达到限制len。如果是这样,你需要在char.isdigit()
之后有一个计数器,并在达到此len时停止。关闭文件总是一个很好的做法,我没有看到你关闭它。 with
语句适合您。