Python 中的多行用户输入

Python 中的多行用户输入

Multiple lines user Input in Python

要获取多行用户输入:

  1. while只要用户输入值,就使用循环进行迭代。
  2. 在每次迭代中,将用户输入和换行符附加到列表中。
  3. 如果用户在没有输入值的情况下按下Enter,则跳出循环。
主程序
lines = [] while True: user_input = input() # 👇️ if user pressed Enter without a value, break out of loop if user_input == '': break else: lines.append(user_input + '\n') # 👇️ prints list of strings print(lines) # 👇️ join list into a string print(''.join(lines))

用户输入多行

while只要用户输入值,我们就使用循环进行迭代。

在每次迭代中,我们检查用户是否在Enter没有输入值的情况下按下退出while True循环。

这可以是任何其他条件,例如,您可能有一个停用词,例如done
or
quit

break
语句跳出最内层的封闭

for循环while

如果用户键入一个值,我们使用该list.append()方法将值和换行符附加到列表中。

list.append
()
方法将一个项目添加到列表的末尾。

或者,您可以使用该sys.stdin.readlines()方法。

主程序
import sys # 👇️ multiline input using stdin.readlines() # 👇️ User must press Ctrl + D (Unix) or Ctrl + Z to exit print('Press CTRL + D (Unix) or CTRL + Z (Windows) to exit') user_input = sys.stdin.readlines() # 👇️ get list of lines print(user_input) # 👇️ join the list items into a string print(''.join(user_input))

多行输入 sys stdin readlines

stdin用于交互式用户输入。

请注意,用户必须按CTRL + D(在 Unix 上)或在 Windows 上退出。 CTRL + Z

如果您最初不想将换行符附加到列表中的每个项目,请使用该str.join()方法将列表项目连接到一个字符串中。

主程序
my_list = [] while True: user_input = input() # 👇️ if user pressed Enter without a value, break out of loop if user_input == '': break else: my_list.append(user_input) # 👇️ prints list of strings print(my_list) # 👇️ joins list of strings into a string my_str = '\n'.join(my_list) print(my_str)

输入多行

我们没有将换行符 ( \n) 附加到每个输入,而是使用该
str.join()方法使用换行符分隔符加入列表。

str.join方法将一个可迭代对象作为参数并返回一个字符串,该字符串是可迭代对象中字符串的串联。

主程序
my_list = ['a', 'b', 'c'] my_str = '\n'.join(my_list) # a # b # c print(my_str)

调用该方法的字符串用作元素之间的分隔符。

发表评论