bingtuag 发表于 2018-8-5 09:22:20

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

  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中没有内容
  >log2>&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 以列表的形式收集参数
页: [1]
查看完整版本: python标准输出 标准错误 重定向