记录python学习,直到学会基本的爬虫,使用python搭建接口自动化测试就算学会了,在进阶webui自动化,app自动化
python基础8-灵活运用顺序、选择、循环结构
- 作业2
- 九九乘法表
- 三种方式打印九九乘法表
- 使用两个嵌套循环
- 使用列表推导式和join
- 使用itertools.product(需要导入itertools模块)
- 打印上三角矩阵
- str.format()方法
- 基本用法
- 使用位置参数
- 使用关键字参数
- 数字格式化
- 使用位置参数
- 使用关键字参数
- 使用字典解包
- 使用列表解包
- 使用类属性
- 格式化数字
- 格式化数字为整数
- 格式化数字为十六进制
- 格式化数字为科学计数法
- 字符串大写和小写
- 使用 .upper() 和 .lower() 方法
- 填充和对齐
- 指定填充字符
- 宽度和精度
- 组合使用填充、对齐、宽度和精度
- 负数索引
- 使用 _ 作为千位分隔符
- 使用 % 符号格式化字符串
- 使用 f-string(Python 3.6+)
- 实践是检验真理的唯一标准
作业2
九九乘法表
三种方式打印九九乘法表
代码比较简单,但实际上后端的代码就是三大结构组成的,函数互调,方法嵌套调用,后端就是玩数据的,还得打断点
使用两个嵌套循环
for i in range(1, 10): # 外层循环,表示乘法表的第一个数
for j in range(1, i + 1): # 内层循环,表示乘法表的第二个数
print(f"{j} * {i} = {i * j}", end="\t") # 打印乘法表的一项,end="\t" 表示用制表符分隔
print() # 每打印完一行后换行
使用列表推导式和join
for i in range(1, 10):
print("\t".join(f"{j}x{i}={i * j}" for j in range(1, i + 1)))
使用itertools.product(需要导入itertools模块)
import itertools
for i, j in itertools.product(range(1, 10), repeat=2):
if i > j:
print(f"{j}x{i}={i * j}", end="\t")
elif i == j:
print()
打印上三角矩阵
for a in range(1,10):
print("\t"*(a-1))
for b in range(1,10):
if a <= b:
print(f"{a} * {b} = {a * b}", end="\t")
str.format()方法
基本用法
使用位置参数
s = "This is a {} and a {}"
print(s.format("pen", "book")) # 输出: This is a pen and a book
使用关键字参数
s = "This is a {first} and a {second}"
print(s.format(first="pen", second="book")) # 输出: This is a pen and a book
数字格式化
使用位置参数
print("I have {0} apples and {1} bananas.".format(5, 3))
使用关键字参数
print("I have {apples} apples and {bananas} bananas.".format(apples=5, bananas=3))
使用字典解包
data = {'apples': 5, 'bananas': 3}
print("I have {apples} apples and {bananas} bananas.".format(**data))
使用列表解包
data = [5, 3]
print("I have {0} apples and {1} bananas.".format(*data))
使用类属性
class Fruit:
apples = 5
bananas = 3
print("I have {0} apples and {1} bananas.".format(Fruit.apples, Fruit.bananas))
格式化数字
print("Pi is approximately {0:.2f}.".format(3.1415926535))
格式化数字为整数
print("The integer value is {0:d}.".format(123))
格式化数字为十六进制
print("The hex value is {0:x}.".format(255))
格式化数字为科学计数法
print("The scientific notation is {0:e}.".format(123456.789))
字符串大写和小写
使用 .upper() 和 .lower() 方法
print("Original: {0}, Upper: {1}, Lower: {2}.".format("hello", "hello".upper(), "hello".lower()))
填充和对齐
print("Left aligned: {0:<10}".format("left"))
print("Right aligned: {0:>10}".format("right"))
print("Centered: {0:^10}".format("center"))
指定填充字符
print("Right aligned with *: {0:*>10}".format("right"))
宽度和精度
print("Width 10, precision 3: {0:10.3f}".format(12.3456))
组合使用填充、对齐、宽度和精度
print("Right aligned, width 10, precision 2: {0:>10.2f}".format(1.23456))
负数索引
print("Last digit is {0:.0f}".format(1234.56789)) # 打印最后一个数字
使用 _ 作为千位分隔符
print("Number with thousands separator: {0:,}".format(1234567.89))
使用 % 符号格式化字符串
s = "Hello %s, %d years old"
print(s % ("Kimi", 30)) # 输出: Hello Kimi, 30 years old
使用 f-string(Python 3.6+)
name = "Kimi"
age = 30
print(f"Hello {name}, {age} years old") # 输出: Hello Kimi, 30 years old