python sys.stdin和sys.stdout的用法说明
1、sys.stdin.readline()与input
import sys # sys.stdin.readline() 相当于input,区别在于input不会读入'\n' aa = sys.stdin.readline() bb = input('请输入:') print(len(aa)) print(len(bb)) #结果 i love DL 请输入:i love DL 10 9
所以len(aa)元素中多了一个‘\n'。还有一个区别在于,input()里面可以直接传入文本,然后打印出来。
2、sys.stdout与print
sys.stdout.write('hello' + '\n') print('hello')
上面两行是等价的,例如:
import sys # sys.stdin.readline() 相当于input,区别在于input不会读入'\n' aa = sys.stdin.readline() bb = input('请输入:') sys.stdout.write(str(len(aa)) + '\n') print(len(bb)) #结果 i love DL 请输入:i love DL 10 9
注:sys.stdout.write(obj+'\n')中的obj只能是字符串。
补充:Python中sys.stdout.flush() 的作用
缓冲区的刷新方式:
flush()刷新缓存区
缓冲区满时,自动刷新
文件关闭或者是程序结束自动刷新。
import time import sys for i in range(5): print(i,end='') # sys.stdout.flush() time.sleep(0.001) #注释打开和关闭效果不同
当我们打印一些字符时,并不是调用print函数后就立即打印的。一般会先将字符送到缓冲区,然后再打印。
这就存在一个问题,如果你想等时间间隔的打印一些字符,但由于缓冲区没满,不会打印。
就需要采取一些手段。如每次打印后强行刷新缓冲区。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。
相关推荐
-
Python中sys模块功能与用法实例详解
本文实例讲述了Python中sys模块功能与用法.分享给大家供大家参考,具体如下: sys-系统特定的参数和功能 该模块提供对解释器使用或维护的一些变量的访问,以及与解释器强烈交互的函数.它始终可用. sys.argv 传递给Python脚本的命令行参数列表.argv[0]是脚本名称(依赖于操作系统,无论这是否是完整路径名).如果使用-c解释器的命令行选项执行命令,argv[0]则将其设置为字符串'-c'.如果没有脚本名称传递给Python解释器,argv[0]则为空字符串. 要循环标准输入或命
-
Python中的sys.stdout.write实现打印刷新功能
前言: 今天学习python的常用模块的时候,了解到了time模块和datetime模块,于是想在编译环境中实时打印出时间,不会换行,且打印的时候自动删除前一步打印出的时间(本质原理不是这样),而不是像print那样打印之后自动换行再重新打印. 想要直接看到效果及方法,请直接跳到后文 解决办法. 我们先来看看Print方法打印的效果: 代码: from datetime import datetime as dt import sys import time for i in range(5):
-
Python如何测试stdout输出
问题 你的程序中有个方法会输出到标准输出中(sys.stdout).也就是说它会将文本打印到屏幕上面. 你想写个测试来证明它,给定一个输入,相应的输出能正常显示出来. 解决方案 使用 unittest.mock 模块中的 patch() 函数, 使用起来非常简单,可以为单个测试模拟 sys.stdout 然后回滚, 并且不产生大量的临时变量或在测试用例直接暴露状态变量. 作为一个例子,我们在 mymodule 模块中定义如下一个函数: # mymodule.py def urlprint(pro
-
python sys.stdin和sys.stdout的用法说明
1.sys.stdin.readline()与input import sys # sys.stdin.readline() 相当于input,区别在于input不会读入'\n' aa = sys.stdin.readline() bb = input('请输入:') print(len(aa)) print(len(bb)) #结果 i love DL 请输入:i love DL 10 9 所以len(aa)元素中多了一个'\n'.还有一个区别在于,input()里面可以直接传入文本,然后打印
-
python中os和sys模块的区别与常用方法总结
前言 本文主要介绍了关于python中os和sys模块区别与常用方法的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 官方解释: os: This module provides a portable way of using operating system dependent functionality. 翻译:提供一种方便的使用操作系统函数的方法. sys:This module provides access to some variables used or
-
详解Python 中sys.stdin.readline()的用法
之前在Python中输入都是用的input(),但是看到大家都用sys.stdin.readline(),没办法那我也得用. python3中使用sys.stdin.readline()可以实现标准输入,需要调用sys库,sys.stdin是一个标准化输入的方法,其中默认输入的格式是字符串,如果是int,float类型则需要强制转换.如: 例1: import sys print('Plase input your name: ') name = sys.stdin.readline() pri
-
Python常用模块sys,os,time,random功能与用法实例分析
本文实例讲述了Python常用模块sys,os,time,random功能与用法.分享给大家供大家参考,具体如下: sys: 介绍:主要包含涉及python编译器与系统交互的函数. 常用函数: import sys print(sys.argv)#本文件名,已经运行该程序时的参数 #[如在命令窗口中python3 mysys.py 参数1 参数2] #那么参数1为sys.argv[1],以此类推 print(sys.version)#python版本号 print(sys.path)#返回模块的
-
python 使用sys.stdin和fileinput读入标准输入的方法
1.使用sys.stdin 读取标准输入 [root@c6-ansible-20 script]# cat demo02.py #! /usr/bin/env python from __future__ import print_function import sys for line in sys.stdin: print(line,end="") 使用方法: cat /etc/passwd|python demo02.py python demo02.py </etc/pa
-
Python标准库之Sys模块使用详解
sys 模块提供了许多函数和变量来处理 Python 运行时环境的不同部分. 处理命令行参数 在解释器启动后, argv 列表包含了传递给脚本的所有参数, 列表的第一个元素为脚本自身的名称. 使用sys模块获得脚本的参数 复制代码 代码如下: print "script name is", sys.argv[0] # 使用sys.argv[0]采集脚本名称 if len(sys.argv) > 1: print "there are",
-
python命令行参数sys.argv使用示例
复制代码 代码如下: #diff.py#!/bin/env python import sys if len(sys.argv) <> 3: print "Usage: " + sys.argv[0] + "file1 file2" sys.exit(-1) file1 = sys.argv[1]file2 = sys.argv[2] list1 = {}for line in open(file1): list1[line.split
-
Python 命令行参数sys.argv
Python代码: Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -->import os, sysos.system(sys.argv[1])带参数执行 python xxx.py speos.system 是用来执行命令行的.因此该程序会接收到第一个参数spe,然后在命令行里执行spe,这样,spe(Python IDE)就打开了.
-
Python中文分词工具之结巴分词用法实例总结【经典案例】
本文实例讲述了Python中文分词工具之结巴分词用法.分享给大家供大家参考,具体如下: 结巴分词工具的安装及基本用法,前面的文章<Python结巴中文分词工具使用过程中遇到的问题及解决方法>中已经有所描述.这里要说的内容与实际应用更贴近--从文本中读取中文信息,利用结巴分词工具进行分词及词性标注. 示例代码如下: #coding=utf-8 import jieba import jieba.posseg as pseg import time t1=time.time() f=open(&q
-
Python中pygame的mouse鼠标事件用法实例
本文实例讲述了Python中pygame的mouse鼠标事件用法.分享给大家供大家参考,具体如下: pygame.mouse提供了一些方法获取鼠标设备当前的状态 ''' pygame.mouse.get_pressed - get the state of the mouse buttons get the state of the mouse buttons pygame.mouse.get_pos - get the mouse cursor position get the mouse c
随机推荐
- 安装sql server 2008时的4个常见错误和解决方法
- javascript中有趣的反柯里化深入分析
- IOS开发中禁止NavigationController的向右滑动返回
- 修改发贴的编辑功能
- BootStrap表单验证实例代码
- Three.js利用性能插件stats实现性能监听的方法
- VC基于ADO技术访问数据库的方法
- 关于ASP.NET中TreeView用法的一个小例子
- 在.NET2.0中使用自定义事务操作
- C#编程实现统计文件夹内文件和隐藏文件的方法示例
- C# SQLite序列操作实现方法详解
- 详谈C++的内存泄漏问题
- Centos 7下使用RPM包安装MySQL 5.7.9教程
- Ajax的用法总结
- java 使用URLDecoder和URLEncoder对中文进行处理
- jsp页面显示数据库的数据信息表
- javascript实现的文字加密解密
- 从两种SQL表连接写法来了解过去
- Javascript Math对象
- JAVA中实现原生的 socket 通信机制原理