开发者

Python3中的多行输入问题

开发者 https://www.devze.com 2023-05-07 09:28 出处:网络 作者: Jellyfish733
目录python3的多行输入问题python实现多行输入总结python3的多行输入问题 因为在OJ上做编程,要求标准输入,特别是多行输入。特意查了资料,自己验证了www.devze.com可行性。
目录
  • python3的多行输入问题
  • python实现多行输入
  • 总结

python3的多行输入问题

因为在OJ上做编程,要求标准输入,特别是多行输入。特意查了资料,自己验证了www.devze.com可行性。

if __name_RbxXtp_ == "__main__":
    strList = []
    for line in sys.stdin:  #当没有接受到输入结束信号就一直遍历每一行
        tempStr = line.split()#对字符串利用空字符进行切片
        strList.extend(tempStr)#把每行的字符串合成到列表

Q1:系统如何判断输入结束?

A:按下换行键然后Ctrl+d结束。

Q2:split()的作用?

A:str.split(str="", num=string.count(str)).

  • split()通过指定分隔符对字符串http://www.devze.com进行切片,并返回切片结果。
  • str-- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。android
  • num-- 分割次数。

Q3:为什么选择list.extend()而不是list.append(),这两者有何区别?

 A:extend()是将新对象的内容添加到列表,append()是将新对象整体添加到列表。

如下图:

list1 = [1, 2, 3]
list2 = [4, 5, 6]
list1.append(list2)

输出是:

Python3中的多行输入问题

list1 = [1, 2, 3]
list2 = [4, 5, 6]
list1.extend(list2)

输出是:

Python3中的多行输入问题

所以看程序的需求选择。

python实现多行输入

1.通过try...except实现

a = []
while True:
  try:
    a.append(input())
  except EOFError:
    print(a)
    break

2.通过sys.stdin实现

import sys
for line in sys.stdin:
  print(line)    # lin开发者_JS培训e就是每行的内容

3.输入结束方式

Windows环境下:ctrl+D

总结

以上为个人经验,希望能给大家一个参RbxXtp考,也希望大家多多支持我们。

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号