我创建了一个脚本,使用用户输入来问候他们,但它打印的字母不是一个句子中的完整名称。怎么样?
img.set_data(new_mundo)
但这会打印出来 你好p 你好r 你好我 你好 你好ç 你好e
答案 0 :(得分:1)
函数input()
从命令行接收输入。例如,如果您在命令行中输入prince
,现在变量val
的值为"prince"
。
使用for循环,您使用for-each符号。字符串也是一种迭代器 - 事实上,字符串只是字符数组。您可以将其视为常规列表,但不是拥有[1, 2, 3, 4]
之类的列表,而是拥有列表['p', 'r', 'i', 'n', 'c', 'e']
。因此for循环的每次迭代仅打印当前正在迭代的字符。
您可以通过避免使用for循环并仅使用代码print("Hello", val)
来简化代码。
但是,如果您只想练习for循环,可以使用下面的代码。试着了解如何以及为什么要简化它!
val = input() //stores the user input into val
name = "" //creates an empty string called name
for s in val: //iterates through each character in val
name += s //adds that character to name
//when the for loop ends, the user input is stored in name
print("Hello", name) //prints "Hello" and the name