Python求助,鱼币答谢
我遇上了“can only concatenate str (not "int") to str”这样的报错,代码如下count=0
one=[]
two=[]
t=0#此时会报错,而去掉此处,在下面的一个注释那里加就不会报错
o=input("输入第一个文件名:")
t=input("输入第二个文件名:")
'''
我打开的文件1内容为:Hello
hi
第二个文件内容为:Hello world
hi
'''
f1=open(o)
f2=open(t)
for i in f1:
one.append(i)
count += 1
for j in f2:
two.append(j)
f1.close()
f2.close()
# 上面的t=0加载此就不会报错
for p in range(count):
if one!=two:
t+=1
print("在第",p+1,"行的",one,"与",two,"不同",sep='',end='')
print()
print("共有",str(t),"处不同",sep='',end='')
如报错图片所示,这是为什么,求大佬告知 t不是个字符串吗?
为何要给它+1?
你后面那个t覆盖了前面的t
而且有两个t,建议不要重名
建议下载个有道词典,把出错信息,翻译一下,然后在网上搜缩
你这个是不能把数字拼接到字符串把 t 是一个字符串,不能加 1 错误的根本原因是变量命名重复
在第4行有个t是int类型,但是在第6行又有一个t是字符串类型
第6行的t会覆盖掉第4行的t
我猜你的本意,在第5行第6行打算用one two 的首字母来代表两个文件名,但是却一不小心和前面的变量名重复了。 qiuyouzhi 发表于 2020-3-30 10:25
t不是个字符串吗?
为何要给它+1?
你后面那个t覆盖了前面的t
哦哦,谢谢,没看见 一个账号 发表于 2020-3-30 10:43
t 是一个字符串,不能加 1
哦哦,谢谢,没看见 最后的魁拔 发表于 2020-3-30 10:25
建议下载个有道词典,把出错信息,翻译一下,然后在网上搜缩
你这个是不能把数字拼接到字符串把
哦哦,谢谢 sunrise085 发表于 2020-3-30 10:45
错误的根本原因是变量命名重复
在第4行有个t是int类型,但是在第6行又有一个t是字符串类型
第6行的t会覆 ...
好的,谢谢
建议去网页百度翻译,把出错信息,翻译一下,然后在网上搜缩
你这个是不能把数字拼接到字符串把 学习
页:
[1]