Python的一些细节

孤人 提交于 2019-11-29 08:29:30

1. 复数是由一个实数和一个虚数组合构成,表示为:x+yj

一个复数时一对有序浮点数 (x,y),其中 x 是实数部分,y 是虚数部分。

1、虚数不能单独存在,它们总是和一个值为 0.0 的实数部分一起构成一个复数

2、复数由实数部分和虚数部分构成

3、表示虚数的语法:real+imagej

4、实数部分和虚数部分都是浮点数

5、虚数部分必须有后缀j或J

2. 基本语法是通过 {} 和 : 来代替以前的 % 。

format 函数可以接受不限个参数,位置可以不按顺序

3.1415926 {:.2f} 3.14 保留小数点后两位
3.1415926 {:+.2f} +3.14 带符号保留小数点后两位
-1 {:+.2f} -1.00 带符号保留小数点后两位
2.71828 {:.0f} 3 不带小数
5 {:0>2d} 05 数字补零 (填充左边, 宽度为2)
5 {:x<4d} 5xxx 数字补x (填充右边, 宽度为4)
10 {:x<4d} 10xx 数字补x (填充右边, 宽度为4)
1000000 {:,} 1,000,000 以逗号分隔的数字格式
0.25 {:.2%} 25.00% 百分比格式
1000000000 {:.2e} 1.00e+09 指数记法
13 {:>10d}         13 右对齐 (默认, 宽度为10)
13 {:<10d} 13 左对齐 (宽度为10)
13 {:^10d}     13 中间对齐 (宽度为10)
11
'{:b}'.format(11)
'{:d}'.format(11)
'{:o}'.format(11)
'{:x}'.format(11)
'{:#x}'.format(11)
'{:#X}'.format(11)
1011
11
13
b
0xb
0XB
进制

^, <, > 分别是居中、左对齐、右对齐,后面带宽度;

 : 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充;

+ 表示在正数前显示 +,负数前显示 -;  (空格)表示在正数前加空格;

b、d、o、x 分别是二进制、十进制、八进制、十六进制。

可以使用大括号 {} 来转义大括号

3. 关于四舍五入的一些细节

  •  小数进位到整数:
print('0.5 {:.0f}'.format(0.5))
print('1.5 {:.0f}'.format(1.5))
print('2.5 {:.0f}'.format(2.5))
print('3.5 {:.0f}'.format(3.5))
print('4.5 {:.0f}'.format(4.5))
print('5.5 {:.0f}'.format(5.5))
print('6.5 {:.0f}'.format(6.5))
print('7.5 {:.0f}'.format(7.5))
print('8.5 {:.0f}'.format(8.5))
print('9.5 {:.0f}'.format(9.5))

结果:

0.5 0
1.5 2
2.5 2
3.5 4
4.5 4
5.5 6
6.5 6
7.5 8
8.5 8
9.5 10

结果中左边为数值,右边为进位后的值,从结果中可以发现,当带进位为5时,进位结果满足以下:

当整数个位为基数时,进位;

当整数个位为偶数时,舍尾;

  • 小数进位到小数:
print('0.205 {:1.2f}'.format(0.205))
print('0.215 {:1.2f}'.format(0.215))
print('0.225 {:1.2f}'.format(0.225))
print('0.235 {:1.2f}'.format(0.235))
print('0.245 {:1.2f}'.format(0.245))
print('0.255 {:1.2f}'.format(0.255))
print('0.265 {:1.2f}'.format(0.265))
print('0.275 {:1.2f}'.format(0.275))
print('0.285 {:1.2f}'.format(0.285))
print('0.295 {:1.2f}'.format(0.295))


print('0.05 {:1.1f}'.format(0.05))
print('0.15 {:1.1f}'.format(0.15))
print('0.25 {:1.1f}'.format(0.25))
print('0.35 {:1.1f}'.format(0.35))
print('0.45 {:1.1f}'.format(0.45))
print('0.55 {:1.1f}'.format(0.55))
print('0.65 {:1.1f}'.format(0.65))
print('0.75 {:1.1f}'.format(0.75))
print('0.85 {:1.1f}'.format(0.85))
print('0.95 {:1.1f}'.format(0.95))

print('0.205 {:1.2f}'.format(0.805))
print('0.215 {:1.2f}'.format(0.815))
print('0.225 {:1.2f}'.format(0.825))
print('0.235 {:1.2f}'.format(0.835))
print('0.245 {:1.2f}'.format(0.845))
print('0.255 {:1.2f}'.format(0.855))
print('0.265 {:1.2f}'.format(0.865))
print('0.275 {:1.2f}'.format(0.875))
print('0.285 {:1.2f}'.format(0.885))
print('0.295 {:1.2f}'.format(0.895))

结果:

0.205 0.20
0.215 0.21
0.225 0.23
0.235 0.23
0.245 0.24
0.255 0.26
0.265 0.27
0.275 0.28
0.285 0.28
0.295 0.29
0.05 0.1
0.15 0.1
0.25 0.2
0.35 0.3
0.45 0.5
0.55 0.6
0.65 0.7
0.75 0.8
0.85 0.8
0.95 0.9
0.205 0.81
0.215 0.81
0.225 0.82
0.235 0.83
0.245 0.84
0.255 0.85
0.265 0.86
0.275 0.88
0.285 0.89
0.295 0.90

可以发现,当带进位为5时,小数进位没有规

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!