• 技术文章 >常见问题 >Python常见问题

    python中如何不使用换行符来写入多行

    silencementsilencement2020-03-06 17:55:27原创2533

    Python是一种跨平台的计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断

    更新和语言新功能的添加,越多被用于独立的、大型项目的开发。

    推荐:Python教程

    Python中的Input()函数在输入时,遇到回车符,那么一次输入就结束了。这不能满足输入多行文本并且行数也不确定的情形,当然输入

    空行也是允许的。

    方法1:利用异常处理机制实现

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

    实际运行时,可以输入多行,当输入最后一行并回车后,按组合键ctrl+D,表示EOF,即End of File、文件尾的意思。此时,input()函数会遇到EOF的异常。Python的异常处理机制将捕获到此异常,执行except部分的语句,此语句为break,因此,立即跳出while循环。这正好满足了我们的需要。

    例如,输入:

    12 345 3.14159回车
    I am a student.回车
    Hello, world!回车

    在集成开发环境中运行时,请按ctrl+D组合键结束多行输入。如果在Windows命令行下用"python 源代码文件名.py”方式运行时,请按ctrl+Z组合键结束多行输入。

    输出结果如下:

    ['12 345 3.14159', 'I am a student.', 'Hello, world!']

    方法二:利用标准输入文件对象sys.stdin的readlines()函数实现

    因为键盘是标准输入设备,计算机操作系统将键盘也是当做文件来对待的,其实计算机操作系统将包括键盘显示器鼠标打印机等在内的各种外围设备都当做文件来对待。Python中与键盘对应的文件对象是sys.stdin,因此可以利用sys.stdin.readlines()函数来实现读取多行文本,一直到遇到文件尾即EOF为止。

    import sys
    lines=sys.stdin.readlines()
    print(lines)

    输入同上,

    输出如下:

    ['12 345 3.14159\n', 'I am a student.\n', 'Hello, world!\n']

    可以看出,这种方式2与方式1的输出结果有细微差别,每行末尾有'\n'字符(即回车符)。

    更多技术请关注Python视频教程

    专题推荐:换行
    品易云
    上一篇:python代码怎么显示提示 下一篇:python如何打印一个对象的全部属性

    相关文章推荐

    • python print函数如何不换行• python编译中怎么换行• pycharm如何自动换行• pycharm编辑器如何设置换行

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网