需要创建一个程序,每行打印一个单词,但仅限于该单词小于4个字符。到目前为止我有这个
输入将是一个列表,例如[' Not',' very',' good',' at'',&# 39;蟒']
string = input("Enter word list:")
txt = string.split()
for words in txt:
print(words)
当输入是一个列表时,它会将其打印在一行中,但如果输入只是文本,例如
输入单词列表:python不太好
然后它会在自己的单行上打印每个单词。
不确定如何实现仅4个字符的打印并且不确定如何让列表在其自己的行上打印其元素
答案 0 :(得分:1)
string = input('Enter word list:\n')
txt = string.split()
for word in txt:
if len(word) < 4:
print('{0}'.format(word))
else:
continue
答案 1 :(得分:0)
使用内置函数len()
计算每个单词的长度。我还包括一个简单的解析if语句来检测你的输入是否是一个列表。
string = raw_input('Enter word list: ')
if string[0] == "[" and string[-1] == "]": # simple method to parse
print(string)
else:
txt = string.split()
for words in txt:
if len(words) <= 4:
print(words)
答案 2 :(得分:0)
当您输入[&#39; Not&#39;,&#39; very&#39;,&#39; good&#39;,&#39; at&#39;,&#39; python&#39 ;],有','。但是当你输入&#34;不太擅长python&#34;时,没有&#39;,&#39;。
答案 3 :(得分:0)
您提供的输入是字面上的['不','非常','好','在','python']? 如果这样那就是你的问题。输入被视为文字字符串,而不是列表。在该输入上调用split将生成输入“list”的单个项目列表,因为该字符串中没有要分割的空格。 我在你的代码中也没有看到任何决定打印字长的代码,但也许只是省略了。