1. 普通的输出
- 生活中的“输出”
- 软件中的“输出”
python中变量的输出:print()
# 打印提示
print('hello world') # 英文引号,所以程序里边的引号都用英文的
print('张飞\n刘备') # \n 是换行符 张飞和刘备分别在两行输出
print输出多个数据
- 用逗号分割即可,输出的数据默认用空格分隔
- 使用
sep=
可以自定义用什么分隔开,这里可以通过pycharm
的ctrl + b
看到源代码的print
定义那里.) - print()之间的默认分隔符是由
end=''
定义的 ```python a=’哈哈’ b=55 print(a,b) # 哈哈 55 print(a,b,sep=’!’) # 哈哈!55
print(‘百家姓’,end=’’) print(‘千字文’)
输出:百家姓千字文 ,没有了换行
<a name="SCjg3"></a>
### print的定义
```python
def print(self, *args, sep=' ', end='\n', file=None): # known special case of print
"""
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.
"""
pass
2. 格式化输出
2.1. 格式化操作的目的
比如有以下代码:
print("我今年10岁")
print("我今年11岁")
print("我今年12岁")
...
想一想:
在输出年龄的时候,用了多次”我今年xx岁”,能否简化一下程序呢???
答:
字符串格式化
2.2 什么是格式化
看如下代码:
age = 10
print("我今年%d岁" % age)
age += 1
print("我今年%d岁" % age)
age += 1
print("我今年%d岁" % age)
...
在程序中,看到了%
这样的操作符,这就是Python中格式化输出。
age = 18
name = "wangyue"
print("我的姓名是%s, 年龄是%d" % (name, age))
对字符串中的动态数据按照指定的数据类型进行输出显示,该操作被称为字符串的格式化输出.
2.3. 常用的格式符号
下面是完整的,它可以与%符号使用列表: 🃏代表比较常用的
格式符号 | 转换 |
---|---|
%c | 字符char |
%s 🃏 | 字符串string |
%d 🃏 | 有符号十进制整数 |
%u | 无符号十进制整数 |
%o | 八进制整数 |
%x | 十六进制整数(小写字母0x) |
%X | 十六进制整数(大写字母0X) |
%f 🃏 | 浮点数 float |
%e | 科学计数法(小写’e’) |
%E | 科学计数法(大写“E”) |
%g | %f和%e 的简写 |
%G | %f和%E的简写 |
一个格式化占位符
直接写,注意他们之间的空格间隔.
age = 3
print("我今年%d岁" % age)
多个格式化占位符
用小括号()括起来,注意他们之间的空格间隔.
age = 3
name='王月'
print("我今年%d岁,我叫%s" % (age,name))
💁♀️扩展:%f保留几位小数
使用%.nf来保留几位小数,会四舍五入
pi = 3.1415926
print('保留一位小数的%.1f' % pi) #保留一位小数的3.1
print('保留2位小数的%.2f' % pi) #保留2位小数的3.14
print('保留12位小数的%.12f' % pi) #保留12位小数的3.141592600000
💁♀️扩展:%d补位
只能补位,不能裁剪,位数不够就补0,0必须有,否则补的就是空格了
card_no=90
print('卡号是%d' % card_no)
# 假设每个人的卡号都是6位数
print('卡号是%06d' % card_no) #卡号是000090
print('卡号是%01d' % card_no) #卡号是90
print('卡号是%016d' % card_no) #卡号是0000000000000090
🚩tip:如果格式化占位符需要结合%使用,比如打印60%时,那么此时两个%%表示一个,否则程序会报错
print('占比是%d%' % 60) #报错
print('占比是%d%%' % 60) #占比是60%
3. 换行输出
在输出的时候,如果有\n
那么,此时\n
后的内容会在另外一行显示
print("1234567890-------") # 会在一行显示
print("1234567890\n-------") # 一行显示1234567890,另外一行显示-------
4. 练一练
- 定义字符串变量 name ,输出 我的名字叫 ⼩明,请多多关照!
- 定义整数变量 student_no ,输出 我的学号是 000001
- 定义⼩数 price 、 weight 、 money ,输出 苹果单价 9.00 元/⽄,购买了 5.00 ⽄,需要⽀付 45.00 元
定义⼀个⼩数 scale ,输出 数据⽐例是 10.00%
print("我的名字叫 %s,请多多关照!" % name)
print("我的学号是 %06d" % student_no)
print("苹果单价 %.02f 元/⽄,购买 %.02f ⽄,需要⽀付 %.02f 元" % (price, weight, money))
print("数据⽐例是 %.02f%%" % (scale * 100))
编写代码完成以下名片的显示
==========我的名片==========
姓名: itheima
QQ:xxxxxxx
手机号:185xxxxxx
公司地址:北京市xxxx
===========================