%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\tzho'
>>> f.readline()
'u\t30\t19876854320\n'
>>> f.readlines()
['2\twu\t39\t17654892310\n', '3\tzheng\t23\t18764583328\n', 'wwwwwwwwwwwwwwww\n', 'aaaaaa\n', 'bbbbbb\n', 'ccccccccc\n', 'ddddddddd\n', 'eeee\n']
>>> 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\n')
...
>>>

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

python-print的更多相关文章

  1. python print输出unicode字符

    命令行提示符下,python print输出unicode字符时出现以下 UnicodeEncodeError: 'gbk' codec can't encode character '\u30fb ...

  2. Python print语句

    1. 输出字符串 >>> strHello = 'Hello World' >>> print (strHello) Hello World 2. 格式化输出整数 ...

  3. Python print函数用法,print 格式化输出

    原文地址:http://blog.csdn.net/zanfeng/article/details/52164124 使用print输出各型的 字符串 整数 浮点数 出度及精度控制 strHello ...

  4. python print format

    python print format %o —— oct 八进制 %d —— dec 十进制 %x —— hex 十六进制 1 >>> print('%o' % 20) 2 24 ...

  5. python print格式化输出。

    python print格式化输出. 1. 打印字符串 print ("His name is %s"%("Aviad")) 效果: 2.打印整数 print ...

  6. Python print() 函数

    Python print() 函数  Python 内置函数 描述 print() 方法用于打印输出,最常见的一个函数. print 在 Python3.x 是一个函数,但在 Python2.x 版本 ...

  7. [转载]Python print函数用法,print 格式化输出

    使用print输出各型的 字符串 整数 浮点数 出度及精度控制 strHello = 'Hello Python' print strHello #输出结果:Hello Python #直接出字符串 ...

  8. 解决Python print输出不换行没空格的问题

    今天在做编程题的时候发现Python的print输出默认换行输出,并且输出后有空格. 题目要求输出 122 而我的输出是: 1 2 2 于是我百度查到取消print自动换行的方法:就是在print的值 ...

  9. python print (x,end = '') 意思作用

    for x in range(10) python print(x)换行输出 for x in range(10) python print (x,end = '')  不换行输出

  10. python print 进度条的例子

    def progress(width, percent): print "%s %d%%\r" % (('%%-%ds' % width) % (width * percent / ...

随机推荐

  1. Qt 获取本机ip地址  【转自 CSDN jpchen609

    QString str; QHostInfo info=QHostInfo::fromName(QHostInfo::localHostName()); //定义一个HostInfo的对象然后对这个对 ...

  2. Log4j简介

    Log4J日志配置详解   一.Log4j简介Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和 ...

  3. Java 自定义注解

    在spring的应用中,经常使用注解进行开发,这样有利于加快开发的速度. 介绍一下自定义注解: 首先,自定义注解要新建一个@interface,这个是一个注解的接口,在此接口上有这样几个注解: @Do ...

  4. winform中listview imagelist问题

    参考:http://www.it165.net/pro/html/201410/23603.html 关于imagelist失真问题: 1.颜色 将ColorDepth属性设置成Depth32Bit ...

  5. ios网络请求特殊字符&处理

    原文地址:http://www.xuebuyuan.com/2039420.html CFURLCreateStringByAddingPercentEscapes 在作项目的的时候,一般都要用到网络 ...

  6. ASP.net页面代码执行顺序

    <%=TextBox1 .Text%> <asp:TextBox ID="TextBox1" runat="server">abc< ...

  7. linux命令:gzip

    1.命令介绍: gzip用来压缩或解压文件,对文本文件的压缩率有60~70%. 2.命令格式: gzip [选项] 文件/目录 3.命令参数: -a或--ascii  使用ASCII文字模式. -c或 ...

  8. mysql 添加用户并授权

    mysql> create database dogDB; mysql> CREATE USER 'dog'@'%' IDENTIFIED BY '123456'; mysql> g ...

  9. Angular--$http服务

    关于Angular中$http 服务是对XMLHttpRequest 对象的封装,向服务器发送请求: 下面自己在angular中$http学习的一个记录, GET请求(先贴码) angualr代码: ...

  10. TOJ2647

                                                             2647: How Many Tables 时间限制(普通/Java):1000MS/ ...