%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. React学习——ListView(Reflux)

    接前一篇,把前面的ListView改成Reflux的形式 var BookActions=Reflux.createActions([ 'fetchList' ]); var BookStore = ...

  2. Java 和 C+

    文不对题,啦啦啦~~~ 第一次感到在windows平台java应用发布的无力,平时自己自写自用都是在自己电脑上,没什么感觉.如今要发布个给人用,打包应用.附加jre,这过程还得多加几行字说明,另人特么 ...

  3. 第6章 第一个Linux驱动程序:统计单词个数

    编写一个Linux的一般步骤: 第1步:建立Linux驱动骨架(装载和卸载Linux驱动) 第2步:注册和注销设备文件 第3步:指定和驱动相关的信息 第4步:指定回调函数 第5步:编写业务逻辑 第6步 ...

  4. Windows集成认证全过程

    开发环境:win7旗舰版,vs2013 服务器环境:windows server 2008 R2 IIS7.5 目的:在局域网搭建一个网站,用户必须使用域帐号登录网站访问 Step 1: 创建proj ...

  5. Jenkins - 持续集成环境搭建

    1. Jenkins 概述 Jenkins是一个开源的持续集成工具.持续集成主要功能是进行自动化的构建.自动化构建包括自动编译.发布和测试,从而尽快地发现集成错误,让团队能够更快的开发内聚的软件. 2 ...

  6. hexo环境变量的配置问题

    因为一些个人原因,想尝试在github上用hexo搭建一个博客,于是用npm安装,安装完成之后却一直无法确认hexo的版本问题,cmd中也一直提示hexo -v 不是有效的命令行,在重装了几次Node ...

  7. cnblogs开篇留念

    之前看过很多大牛程序员们介绍的一些经验之类的文章,几乎每个人都提到了一点就是平时要写博客,记录一些自己平时学习和工作过程中学习到的一些技术点和心得.之前也用过一些其他的网站博客,上周有同事推荐了一篇文 ...

  8. 关于rem的自定义HTML比例设定

    通过设定html根标签的font-size值,控制rem来达到全局布局的自适应的,CSS长度单位全部通过rem设定 必须在head在中引入不可以延迟引入: (function (doc, win) { ...

  9. iOS截屏

    - (UIImage *)captureImageFromView:(UIView *)view{ UIGraphicsBeginImageContext(view.bounds.size); CGC ...

  10. nodeType、nodeName和nodeValue

    首先了解一下DOM中有三大节点,分别是 元素节点,文本节点,属性节点 元素节点:构成了DOM的基础.文档结构中,<html>是根元素,代表整个文档,其他的还有<head>,&l ...