python天阶教程--格式化输出

        python格式输出,代码加内容:

# 1.格式化字符串文本输出:
# 1.1将要输出的内容放在单引号或双引号内,然后通过f{}方式输出引号的内容
name = 'myun'
age = 21
str1 = f'我叫{name},今年{age}岁'
print(str1)
"""
我叫myun,今年21岁
"""

# 1.2另一种str.format(),使用变量替换标记位置的输出,并在{}中定义输出格式
number1 = 0.031415926
print('保留两位小数百分比{:.2%}'.format(number1))  # 3.14%

# str.format()设置格式
# (1)按位置访问参数:給出参数位置,起始位置是0,{参数顺序}.format(参数)
print('{0},{1},{2}'.format('a', 'b', 'c'))  # 正序:a,b,c
print('{2},{1},{0}'.format('a', 'b', 'c'))  # 倒序:c,b,a
print('{0},{2},{1}'.format('a', 'b', 'c'))  # a,c,b
print('{2},{0},{1}'.format('0', '1', '2'))  # 2,0,1
print('{1},{2},{1}'.format('a', 'b', 'c'))  # b,c,b

# (2)按名称访问参数:
print('我爱吃{arg},不爱吃{arg1}'.format(arg='苹果', arg1='葡萄'))  # 我爱吃苹果,不爱吃葡萄

# (3)访问参数的项:
str1 = [1, 2, 3, 4, 5, 6]
print('{0[1]}和{0[4]}'.format(str1))  # 2和5

# (4)repr和str替换:!r !s
print('repr()调用{!r},str()调用{!s}'.format('test1', 'test2'))

# (5)对齐文本并指定宽度
print('{:<30}'.format('左对齐,宽度为30'))
print('{:>30}'.format('右对齐,宽度为30'))
print('{:^30}'.format('居中对齐,宽度为30'))
print('{:*^30}'.format('居中对齐,宽度30,并用*填充'))
print('{:$>30}'.format('右对齐,宽度30,并用$填充'))
'''
左对齐,宽度为30                     
                     右对齐,宽度为30
          居中对齐,宽度为30          
*******居中对齐,宽度30,并用*填充********
$$$$$$$$$$$$$$$$右对齐,宽度30,并用$填充

'''

# (6)数字替换
print('{:f}'.format(3.14))  # 3.14

# (7)基数转换:%x %o
print('int:{0:d},hex:{0:x},oct:{0:o},bin:{0:b}'.format(25))
print('int:{0:d},hex:{0:#x},oct:{0:#o},bin:{0:#b}'.format(25))
'''
int:25,hex:19,oct:31,bin:11001
int:25,hex:0x19,oct:0o31,bin:0b11001
'''

# (8)使用逗号做为千分位分隔符,该输出只能用逗号分隔
print('{:,}'.format(1314520999))

# (9)表示百分比
points = 2
total = 9
print('2/9={:.2%}'.format(points / total))  # 2/9=22.22%

# (10)特殊类型格式
import datetime

d = datetime.datetime(2023, 3, 24, 17, 34, 28)
print('{:%Y-%m-%d %H:%M:%S}'.format(d))  # 023-03-24 17:34:28

# 2.手动格式化字符串
# 2.1 str.rjust()给定宽度,然后右对齐,左边用空格对齐
for x in range(1, 7):
    print(repr(x).rjust(2), repr(x * x).rjust(3), repr(x * x * x).rjust(4))
"""
1   1    1
 2   4    8
 3   9   27
 4  16   64
 5  25  125
 6  36  216
"""
# 2.2 str.ljust()给定宽度,然后左对齐,右边用空格对齐
for x in range(3, 9):
    print(repr(x).ljust(2), repr(x * x).ljust(3), repr(x * x * x).ljust(4))
'''
3  9   27  
4  16  64  
5  25  125 
6  36  216 
7  49  343 
8  64  512 
'''
# 2.3 str.center()给定宽度,中间对齐,两边用空格对齐
for x in range(3, 9):
    print(repr(x).center(2), repr(x * x).center(3), repr(x * x * x).center(4))
"""
3   9   27 
4   16  64 
5   25 125 
6   36 216 
7   49 343 
8   64 512 
"""

# 2.4 str.zfill()给定位数,如果不够从左边用0填充
print('-13.14'.zfill(7))
print('3.14159'.zfill(10))
print('3.14159'.zfill(3))
'''
-013.14
0003.14159
3.14159   
'''

# 3. 老式的字符串格式
'''
通过%将字符串格式话,例如:%3.2f 最小宽度为3,保存两位小数
'''
import math

print('圆周率是:%1.9f' % math.pi)  # 不能用,分开
'''
圆周率是:3.141592654
'''

你可能感兴趣的:(Python学习,python,开发语言,爬虫)