有人可以帮助我使我的程序案例不敏感吗?

时间:2016-05-09 10:38:25

标签: python

到目前为止,这是我的代码,现在它区分大小写。我尝试将字符串小写(使用.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

3 个答案:

答案 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))