我目前有一个错误,我的代码,我需要帮助修复它。 基本上,当我尝试向列表中添加某些内容时,它只适用于某些参数
这是一个snipet(不是完整的代码):
elif sentencearray[x] == " ":
lengthlist.append(len(longestword))
wordlist.append(str(*longestword))
longestword.clear()
当我尝试运行我的代码时,wordlist.append(str(*longestword))
起作用,但lengthlist.append(len(longestword))
不起作用。所有变量都已定义。只是当我尝试打印lengthlist
时,结果是空的,尽管我只是在其中添加了一些内容。我敢肯定这些行的标签是一样的。有人能解释一下为什么会这样吗
如果这是一个愚蠢的错误,我对python相当陌生,所以我可能会在这里和那里犯一些错误
以下是完整的代码:
# Online Python - IDE, Editor, Compiler, Interpreter
sentence = input("enter sentence here: ")
sentencearray = list(sentence)
sentencelength = len(sentencearray)
x = 0
y = 0
counter = 0
numvowels = 0
numletters = 0
numuppercase = 0
vowels = ['a','e','i','o','u','A','E','I','O','U']
uppercaseletters = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']
letters = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z', 'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']
valuelist = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
knownletters = []
longestword = []
wordlist = []
lengthlist = []
knownletters.append(sentencearray[x])
for x in range(0,len(sentencearray)):
for y in range(0,10):
if sentencearray[x] == vowels[y]:
numvowels += 1
for x in range(0,len(sentencearray)):
for y in range(0,26):
if sentencearray[x] == uppercaseletters[y]:
numuppercase += 1
for x in range(0,len(sentencearray)):
for y in range(0,52):
if sentencearray[x]==letters[y]:
longestword.append(sentencearray[x])
for z in range(0,len(knownletters)):
if sentencearray[x] != knownletters[z]:
counter += 1
if counter == len(knownletters):
numletters += 1
knownletters.append(sentencearray[x])
counter = 0
elif sentencearray[x] == " ":
lengthlist.append(len(longestword))
wordlist.append(str(*longestword))
longestword.clear()
for a in range(0,len(sentencearray)):
for b in range(0,51):
if sentencearray[a] == letters[b]:
x += 1
valuelist[b] = valuelist[b] + 1
print("# of vowels:" + str(numvowels))
print("# of uppercase letters: "+ str(numuppercase))
print("# of unique letters: " + str(numletters+1))
print("# of times the most frequent letter appears: "+ str(max(valuelist)))
print(longestword)
print(len(longestword))
print(lengthlist)
print(wordlist(max(lengthlist)))
print(knownletters)
print(x)
您也可以通过以下网址查看: https://www.online-python.com/5TYKzmJO9g
我知道这不是你想要的。。。但是有太多的Python特性让你错过了,我忍不住要拿出一个“更具Python风格”的例子
它不是完全完整的(我没有你的规范),特别是它将数字和特殊字符视为“字母”,有很多方法可以排除它们
相关问题 更多 >
编程相关推荐