Python 中的多行输入处理
虽然 Python 3 引入了 input 函数作为 raw_input 的替代品,但前者缺乏接受多行的能力输入。可以通过多种方法克服此限制。
利用循环
一种解决方案是采用一直持续到文件结束 (EOF) 字符的循环遇到。这种技术使程序能够逐行读取输入并将其存储在列表或变量中。
# Python 3 print("Enter/Paste your content. Ctrl-D or Ctrl-Z (Windows) to save it.") contents = [] while True: try: line = input() except EOFError: break contents.append(line) # Python 2 print "Enter/Paste your content. Ctrl-D or Ctrl-Z (Windows) to save it." contents = [] while True: try: line = raw_input("") except EOFError: break contents.append(line)
使用多行字符串文字
另一种方法是利用用三引号括起来的多行字符串文字。这些文字可以分配给变量并像多行输入一样处理。
multi_line_input = ''' Line 1 Line 2 Line 3 '''
第三方模块
或者,可以使用第三方模块(例如 textwrap)来促进多行输入处理。
import textwrap multi_line_input = textwrap.dedent(''' Line 1 Line 2 Line 3 ''')
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3