python-输出

1 格式化符号

格式符号转换
%s字符串
%d有符号的十进制整数
%f浮点数
%c字符
%u无符号十进制整数
%o八进制整数
%x十六进制整数(小写ox)
%X十六进制整数(大写OX)
%e科学计数法(小写’e’)
%E科学计数法(大写’E’)
%g%f和%e的简写
%G%f和%E的简写

技巧,查看疯狂python讲义(P29)

  • %06d,表示输出的整数显示位数,不足以0补全,超出当前位数则原样输出
  • %.2f,表示小数点后显示的小数位数。
  • ‘-‘或‘<‘表示左对齐
  • ‘>’右对齐
  • ‘+‘表示数值总要带着符号(正数带“+”,负数带“-”)

2 体验

格式化字符串除了%s,还可以写为f'{表达式}'

age = 18 
name = 'TOM'
weight = 75.5
student_id = 1

# 我的名字是TOM
print('我的名字是%s' % name)

# 我的学号是0001
print('我的学号是%4d' % student_id)

# 我的体重是75.50公斤
print('我的体重是%.2f公斤' % weight)

# 我的名字是TOM,今年18岁了
print('我的名字是%s,今年%d岁了' % (name, age))

# 我的名字是TOM,明年19岁了
print('我的名字是%s,明年%d岁了' % (name, age + 1))

# 我的名字是TOM,明年19岁了
print(f'我的名字是{name}, 明年{age + 1:d}岁了')

f-格式化字符串是Python3.6中新增的格式化方法,该方法更简单易读。

3 转义字符

  • \n:换行。
  • \t:制表符,一个tab键(4个空格)的距离。

4 结束符

想一想,为什么两个print会换行输出?

print('输出的内容', end="\n")

在Python中,print(), 默认自带end="\n"这个换行结束符,所以导致每两个print直接会换行展示,用户可以按需求更改结束符。

5 print巧用

python基础===* 解包,格式化输出和print的一点知识

#print格式如下所示,sep是打印多个变量时会直接用空格隔开,可以自己改变。
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)

#打印占5个字符宽度,向右对齐,不打印回车
print(f'{number:>5d}', end='')

>>> print(f'area = {area:.2f}')	#打印2位小数浮点数

>>> print('%-10.3f' % pi) 	#左对齐
3.142     

>>> print('%+f' % pi) #显示正负号
+3.141593

#*将arg的每一项分配给了func函数,而这个过程中*的作用就是解包。
>>> str = "abcdefg"
>>> print(*str, sep='|')
a|b|c|d|e|f|g

转义字符\可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\表示的字符就是\,可以在Python的交互式命令行用print()打印字符串看看:

>>> print('I\'m ok.')
I'm ok.
>>> print('I\'m learning\nPython.')
I'm learning
Python.
>>> print('\\\n\\')
\
\

如果字符串里面有很多字符都需要转义,就需要加很多\,为了简化,Python还允许用r’‘表示’'内部的字符串默认不转义,可以自己试试:

>>> print('\\\t\\')
\       \
>>> print(r'\\\t\\')
\\\t\\

如果字符串内部有很多换行,用\n写在一行里不好阅读,为了简化,Python允许用’’’…’’'的格式表示多行内容,可以自己试试:

>>> print('''line1
... line2
... line3''')
line1
line2
line3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值