手机访问 | 设为首页 | 加入收藏 | 网站地图

当前位置:电脑中国 > 编程 > web开发 >

Python输出相关内容

2017-03-23 09:52|来源:未知 |作者:dnzg |点击:

Python输出相关内容:字符串格式化,占位符有 %d %f %s 等,和c有很多一样的地方。

用法1

?
1
2
3
4
5
6
#占位符有 %d %f %s 等,和c有很多一样的地方
#单个变量替换
'aa %d' % 12 # ==> 'aa 12'
#多个变量替换
'point(%d,%d)' %(1,2)# ==>'point(1,2)'
#多个变量替换时需要加括号

用法2

使用str.format函数,它通过{}和:来代替%,作为占位符。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
'{},{}'.format('aaa',18) #==>'aaa,18' 不设置替换标号按传入顺序替换
'{0},{1}'.format('aaa',18)  #==>'aaa,18' 设置标号按标号顺序替换
'{1},{0},{1}'.format('aaa',18) #==> 'aaa,18,aaa'
'{name},{age}'.format(age=18,name='aaa') #==>'aaa,18' 设置占位符名称
 
#通过属性来替换占位符
class Person:
  def __init__(self,name,age):
    self.name,self.age = name,age
    def __str__(self):
      return 'This guy is {self.name},is {self.age} old'.format(self=self)
str(Person('aaa',18))  #==>'This guy is aaa,is 18 old'
 
#通过下标替换占位符
p=['aaa',18]
'{0[0]},{0[1]}'.format(p) #==>'aaa,18' 第一个0代表传入的参数p第二个[0]代表下标0的元素
'{p[0]},{p[1]}'.format(p = p) #==>'aaa,12'
 
#格式输出
#^、<、>分别是居中、左对齐、右对齐,后面带宽度,:号后面第一位是要填充的字符,只能是一个字符,不指定的话默认是用空格填充
#用法{[name]:[x[^<>]]d}
'{p[0]},{p[1]:^6d}'.format(p = p) #==>'aaa,  12  ' 第二个元素6位宽度居中。
 '{p[0]},{p[1]:0>6d}'.format(p = p) #==>'aaa,000012' #第二个元素左对齐,6位宽度,其他位用0填充
 
#浮点数精度
'{:.2f}'.format(321.33345) #==>'321.33'小数点后两位
#f为浮点数,此外还有:进制,b、d、o、x分别是二进制、十进制、八进制、十六进制
 
#分隔数字
'{:,}'.format(1234567890) #==>'1,234,567,890'

print输出函数

这里主要介绍Python3.5的print函数,通过使用help(print)

?
1
2
3
4
5
6
7
8
9
10
print(...)
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
 
    Prints the values to a stream, or to sys.stdout by default.
    打印values到一个流,默认是标准输出
    Optional keyword arguments:
    file:  是一个 file-like 对象,可以设置此参数到输出到一个文件,默认是标准输出
    sep:   多个values中间的间隔符,默认是空格
    end:   结尾符,默认是换行符
    flush: 是否强制flush流,默认是false
(责任编辑:dnzg)