zoukankan      html  css  js  c++  java
  • python 的print 用法

    print(x,y)

    等价于

    import sys

    sys.stdout.write(str(x) + ' ' +str(y) + ' ')

    从语法上讲,调用python3.0 的print 函数有如下的形式:

    print([object,...][,seq=' '][,end=' '][,file=sys.stdout])

    seq  是在每个对象的文本之间插入一个字符串,如果没有桩底的话,它默认是一个单个空格,传递一个空字符串将会一直分隔符

    end 是添加在打印文本末尾的一个字符串,如果灭有传递的话,它默认的是一个 换行字符。传递一个控制符串将会避免在打印的文本的末尾移动到下一个输入行-----下一个print 将会保持添加到当前输出行的末尾。

    file 指定了文本将要发送到的文件、标准流或者其他类似文件的对象;如果没有传递的话,它默认的是sys.stdout。带有一个类似文件的write(string)方法的任何对象都可以传递,但真正的文件应该已经为了输出而打开。

    例子:

    import sys 
    x = 'spam'
    y = '99'
    z = ['eggs']
    print('first')
    print(x,y,z)
    
    print('second sep')
    print(x,y,z,sep='....')
    print('third end')
    print(x,y,z,end='
    ');print(x,y,z)
    print('foured end','')
    print(x,y,z,end=',');print(x,y,z)
    print('fived file')
    print(x,y,z,sep='...',file=open('data.txt','w'))
    print(open('data.txt').read())

    结果

    first
    spam 99 ['eggs']
    second sep
    spam....99....['eggs']
    third end
    spam 99 ['eggs']
    spam 99 ['eggs']
    foured end 
    spam 99 ['eggs'],spam 99 ['eggs']
    fived file
    spam...99...['eggs']

    重定向输出流

    sys.stdout = open('log.txt','a')
    print(x,y,z)

    举例

    import sys
    temp = sys.stdout
    sys.stdout = open('log.txt','a')
    print('spam')
    print(1,2,3)
    sys.stdout.close()
    sys.stdout = temp
    
    print('back here')
    print(open('log.txt').read())

    输出:

    back here
    spam
    1 2 3
  • 相关阅读:
    Java中使用Lua脚本语言(转)
    lua、groovy嵌入到java中的性能对比(转)
    有人实践过 Phabricator 以及 Arcanist 作为 code review 的工具么?(转)
    Lua Development Tools (LDT)
    海量数据处理面试题集锦
    三层架构之抽象工厂加反射----实现数据库转换
    八卦一下
    java实现各种数据统计图(柱形图,饼图,折线图)
    activity-alias的使用
    C#反射Assembly 具体说明
  • 原文地址:https://www.cnblogs.com/sxwen/p/8024500.html
Copyright © 2011-2022 走看看