到目前为止,这是我的代码,现在它区分大小写。我尝试将字符串小写(使用.lower)但没有成功。有人可以帮忙吗?
file=open("numbertext.txt","w")
my_string= input("Enter a sentence. ")
splitted = my_string.split()
d = {}
l=[]
for i,j in enumerate(splitted):
if j in d:
l.append(d[j])
else:
d[j]=i
l.append(i)
print(l)
file.write(str(l))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 4, 11, 5, 6]
file=open("newfile.txt","w")
file.close
答案 0 :(得分:0)
在Python something.method
中不调用该方法 - 它只访问该名称的属性。因此,在您的情况下,您需要file.close()
(或者更好,使用with语句),并且对于您的原始问题:使用somestring.lower()
。
答案 1 :(得分:0)
splitted = my_string.lower().split()
会这样做
答案 2 :(得分:0)
函数lower
返回转换后的字符串,并且不会转换字符串self。你应该在这里使用lower
:
splitted = my_string.lower().split()
优化代码:
d = {}
l=[]
for i,j in enumerate(splitted):
l.append(d.setdefault(j, i))
with open("numbertext.txt","w") as f:
f.write(str(l))