zoukankan      html  css  js  c++  java
  • python-print

    %s,%d就是占位符。还有%r

    只是说明这样的对应:%s-->str();%r-->repr(),什么意思呢?就是说%s调用的是str()函数把对象转化为str类型,而%r是调用了repr()将对象转化为字符串。

    >>> import datetime
    >>> t = datetime.date.today()
    >>> t
    datetime.date(2016, 8, 5)
    >>> str(t)
    '2016-08-05'
    >>> repr(t)
    'datetime.date(2016, 8, 5)'

    >>> print "My name is {0} and my age is {1}"  .format("wo",38)
    My name is wo and my age is 38
    >>> "My website is {website}".format(website="wo.qq.com")
    'My website is wo.qq.com'

    >>> myinfo={}
    >>> myinfo['web']='wo.qq.com'
    >>> myinfo['name']='nb'
    >>> myinfo['room']=876
    >>> myinfo
    {'web': 'wo.qq.com', 'name': 'nb', 'room': 876}
    >>> print 'he is in %(room)d' %myinfo
    he is in 876
    >>> print 'myname is in %(name)s' %myinfo
    myname is in nb



    >>> website='wo.qq.com'
    >>> for i in website.split('.'):
    ...  print i
    ...
    wo
    qq
    com

    >>> for i in website.split('.'):
    ...  print i,
    ...
    wo qq com

    >>> "wo"+".qq.com"
    'wo.qq.com'
    >>> "'wo'+'.qq.com'"
    "'wo'+'.qq.com'"
    >>> eval("'wo'+'.qq.com'")
    'wo.qq.com'

    eval()做的事情完全不一样,它会把字符串里面的计算出来
    >>> 3+4
    7
    >>> "3+4"
    '3+4'
    >>> eval("3+4")
    7
    顺便再说一下另外一个跟eval()有点类似的函数
    exec(),这个函数专门来执行字符串或文件里面的python语句。

    >>> exec "print 'woshi'"
    woshi

    python中的print默认是换行的
    想要不换行输出有两种办法:

    stdout法
    >>> aa=fileinput.input('a.list')
    >>> for i in aa:
    ...  sys.stdout.write(i)
    ...
    1    zhou    30    19876854320
    2    wu    39    17654892310
    3    zheng    23    18764583328

    逗号法
    >>> f=open('a.list','r')
    >>> for i in f:
    ...  print i,
    ...
    1    zhou    30    19876854320
    2    wu    39    17654892310
    3    zheng    23    18764583328
    wwwwwwwwwwwwwwww
    aaaaaa
    bbbbbb
    ccccccccc
    ddddddddd
    eeee
    uuuuu
    >>>

    print语句没有了,取而代之的是print()函数。 Python 2.6与Python 2.7部分地支持这种形式的print语法。在Python 2.6与Python 2.7里面,以下三种形式是等价的:

    print "fish"
    print ("fish") #注意print后面有个空格
    print("fish") #print()不能带有任何其它参数



    Python文件关闭机制详解
    http://python.jobbole.com/81477/

    文件是按流来算的,先读5个字符,再读这一行其余部分,再读剩余的行到一个列表中。然后这个文件就空了。
    >>> f=open('a.list','r')
    >>> f
    <open file 'a.list', mode 'r' at 0x7f5255b09390>
    >>> f.read(5)
    '1 zho'
    >>> f.readline()
    'u 30 19876854320 '
    >>> f.readlines()
    ['2 wu 39 17654892310 ', '3 zheng 23 18764583328 ', 'wwwwwwwwwwwwwwww ', 'aaaaaa ', 'bbbbbb ', 'ccccccccc ', 'ddddddddd ', 'eeee ']
    >>> f.readlines()
    []
    >>> f.readline()
    ''
    >>> f.read(1)
    ''
    >>> f.close()
    >>> f
    <closed file 'a.list', mode 'r' at 0x7f5255b09390>


    打开文件的优选最佳实践方式是使用 “with” 语句,不用显式地关闭文件。
    >>> with open('a.list','r') as f:
    ...  for i in f:
    ...   print i
    ...
    1    zhou    30    19876854320

    2    wu    39    17654892310

    3    zheng    23    18764583328

    wwwwwwwwwwwwwwww

    aaaaaa

    bbbbbb

    ccccccccc

    ddddddddd

    eeee

    >>> with open('a.list','a') as f:
    ...  f.write('uuuuu ')
    ...
    >>>


    只读方式打开估计不会有太大后果,如果你是写方式打开的,没有关闭,那你这文件实际上是个空文件。要关闭这个动作才把内容真正写到问价里去。你可以做个测试,在写打开的时候拷贝这个文件,打开备份肯定是个空文件。

  • 相关阅读:
    Leetcode 122. 买卖股票的最佳时机 II
    Leetcode 121. 买卖股票的最佳时机
    Leetcode 205. 同构字符串
    Leetcode 875. 爱吃香蕉的珂珂
    Leetcode 921. 使括号有效的最少添加
    Leetcode 238. 除自身以外数组的乘积
    评论设置----第二章:创建和管理内容
    其它内容选项----第二章:创建和管理内容
    预览和全展示----第二章:创建和管理内容
    Drupal的主题----第一章:Drupal的介绍
  • 原文地址:https://www.cnblogs.com/createyuan/p/5740613.html
Copyright © 2011-2022 走看看