Python3中的多行输入问题
python3的多行输入问题
因为在OJ上做编程,要求标准输入,特别是多行输入。特意查了资料,自己验证了可行性。
if __name__ == "__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()通过指定分隔符对字符串进行切片,并返回切片结果。str-- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。num-- 分割次数。
Q3:为什么选择list.extend()而不是list.append(),这两者有何区别?
A:extend()是将新对象的内容添加到列表,append()是将新对象整体添加到列表。
如下图:
list1 = [1, 2, 3] list2 = [4, 5, 6] list1.append(list2)
输出是:

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

所以看程序的需求选择。
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) # line就是每行的内容
3.输入结束方式
windows环境下:ctrl+D
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
pyqt5教程QGraphicsScene及QGraphicsView使用基础
这篇文章主要为大家介绍了pyqt5教程中QGraphicsScene及QGraphicsView使用基础,有序要的朋友可以借鉴参考下,希望能够有所帮助2021-10-10
使用httplib模块来制作Python下HTTP客户端的方法
这篇文章主要介绍了使用httplib模块来制作Python下HTTP客户端的方法,文中列举了一些httplib下常用的HTTP方法,需要的朋友可以参考下2015-06-06
python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警
这篇文章主要介绍了python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警的示例,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下2021-01-01


最新评论