python标准输出 标准错误 重定向

发布时间:2019-09-01 09:50:19编辑:auto阅读(2187)

    1、sys.stdin  为文件对象, 当对文件对象做循环的时候,返回的为行数

    2、ls > log 2>&1  标准输出和标准错误都输出到log,&> log也可以,但是会有版本限制

    3、print 和stdout的区别:

    print 是调用一个对象的write方法,通常是stdout

    print会先进行格式转换

    print 123456   == sys.stdout.write(str(123456)+'\n')

    4、标准输出不可以为int类型, sys.stdout.write(1)  不可以

    5、shell中& 单独为后台执行, >& 为管道,重定向到管道

    >log 1>&2  把标准输出输出到标准错误   一同显示出来,而log中没有内容

    >log  2>&1 把标准错误输出到标准输出, 则不会打印输出,而log中会有内容

    python 中为:

    print >> sys.stderr,"%s is not exists" % f

    sys.stdout.write("I am standard output\n")

    5、python -u buffer.py | cat -   (-的意思为从标准输入读数据,不加也可以) (-u 禁止buffer输出)

    6、locals()  以字典的形式返回参数值  

    7、sys.argv 以列表的形式收集参数     


关键字