python使用技巧-标准输入

 更新时间:2022年02月20日 11:20:24   作者:zzxiaoma  
这篇文章主要介绍了python使用技巧标准输入,标准输入即stdin ,下文围绕python使用技巧标准输入相关资料展开学习内容,具有一的参考价值,需要的小伙伴可以参考一下

可以通过单个文件的内容作为标准输入:

1.建立文件std.py

import sys

for line in sys.stdin:
    print(line, end="")

在linux下运行cat /etc/passwd | python std.py或者python std.py < /etc/passwd

就会把/etc/passwd中的内容打印出来,在程序中通过sys.stdin获取

sys.stdin是一个普通文件对象,除了从标准输入读取内容以外,并没有特殊之处。我们也可以使用sys.stdin调用文件对象的方法。如调用read函数读取标准输入中的所有内容。

2.建立文件std2.py

import sys

print(sys.stdin.read())

运行cat /etc/passwd | python std2.py

读取多个文件内容作为标准输入

使用fileinput,可以依次读取命令行参数中给出的多个文件。大部分情况下,我们直接调用fileinput模块的input方法按行读取内容即可。 例如建立文件read_file.py

import fileinput

for line in fileinput.input():
    print(line, end="")

在linux下运行python read_stdin.py /etc/passwd /etc/passwd-,可以输出多个文件内容

因为fileinput可以读取多个文件的内容,所以fileinput提供了一些方法让我们知道当前所读取的内容属于哪一个文件。

fileinput中常用的方法有:

  • 1、filename:当前正在读取的文件名;
  • 2、fileno:文件的描述符;
  • 3、filelineno:正在读取的行是当前文件的第几行;
  • 4、isfirstline:正在读取的行是否当前文件的第一行;
  • 5、isstdin:正在读取文件还是直接从标准输入读取内容。  

代码如下:

import fileinput

for line in fileinput.input():
    meta = [fileinput.filename(),fileinput.fileno(),fileinput.filelineno(),fileinput.isfirstline(),fileinput.isstdin()]
    print(meta)
    print(line, end="")

到此这篇关于python使用技巧-标准输入的文章就介绍到这了,更多相关python标准输入内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 深入了解Python中Lambda函数的用法

    深入了解Python中Lambda函数的用法

    lambda函数是Python中常用的内置函数,又称为匿名函数。和普通函数相比,它只有函数体,省略了def和return,使得结构看起来更精简。本文将详细说说Lambda函数的用法,需要的可以参考一下
    2022-09-09
  • PaddleNLP ppdiffusers 自动生成兔了个兔海报

    PaddleNLP ppdiffusers 自动生成兔了个兔海报

    这篇文章主要为大家介绍了PaddleNLP ppdiffusers 自动生成兔了个兔海报示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • Django中间件基础用法详解

    Django中间件基础用法详解

    这篇文章主要介绍了Django中间件基础用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • 用tensorflow搭建CNN的方法

    用tensorflow搭建CNN的方法

    本篇文章主要介绍了用tensorflow搭建CNN的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • python3 flask实现文件上传功能

    python3 flask实现文件上传功能

    这篇文章主要为大家详细介绍了python3 flask实现文件上传功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-08-08
  • django模型层(model)进行建表、查询与删除的基础教程

    django模型层(model)进行建表、查询与删除的基础教程

    这篇文章主要给大家介绍了关于django模型层(model)进行建表、查询与删除的等基础操作的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-11-11
  • Python内置函数locals和globals对比

    Python内置函数locals和globals对比

    这篇文章主要介绍了Python内置函数locals和globals对比,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • Python新手必读bytearray对象使用技巧掌握

    Python新手必读bytearray对象使用技巧掌握

    Python中的bytearray是一个可变序列,通常用于存储二进制数据,它允许在不创建新的对象的情况下就地修改数据,非常适用于处理字节数据,本文将深入学习bytearray对象的使用,包括创建、修改、切片和常见应用场景
    2023-12-12
  • Python简单实现查找一个字符串中最长不重复子串的方法

    Python简单实现查找一个字符串中最长不重复子串的方法

    这篇文章主要介绍了Python简单实现查找一个字符串中最长不重复子串的方法,涉及Python针对字符串的简单遍历、运算等相关操作技巧,需要的朋友可以参考下
    2018-03-03
  • django项目登录中使用图片验证码的实现方法

    django项目登录中使用图片验证码的实现方法

    这篇文章主要介绍了django项目登录中使用图片验证码的实现代码,代码简单易懂,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-08-08

最新评论