我似乎无法让这个python程序工作。它应该从我桌面上的用户那里获得一个输入的.txt文件。 txt文件作为单行字符。在用户输入文件之后,程序然后应该计算X,Y和Z的数量(大写和小写)以及不是X,Y或Z的“坏”字符的数量。
这就是我所拥有的:
def main():
count = 0
F1 = raw_input("Enter output file name: ")
File = open(F1,"r")
for i in File:
a=str.count('x' and 'X')
print "The number of Xs was: ", a
b= str.count('y' and 'Y')
print "The number of Ys was: ", b
c = str.count('z' and 'Z')
print "The number of Zs was: ", c
d = str.count
print "The number of bad characters was: ",
return
main()
答案 0 :(得分:1)
此表达式
str.count('x' and 'X')
不符合你的想法。查看子表达式'x' and 'X'
如何评估:
>>> 'x' and 'X'
'X'
你可以这样做,而不是:
a=str.count('x') + str.count('X')
或
a=s.upper().count('X')
修正了a,b和c的计算后,需要修复d的计算。可以这样做:
d = len(str) - (a + b + c)
答案 1 :(得分:0)
完成@piokuc所说的内容后,您需要将str.count
替换为i.count
。
这是因为它包含你的字符串,而不是str。