常用函数

format()

format()` 方法的语法格式为:
`{<参数序号>:<格式控制标记>}

格式控制标记包含以下六个可选字段,可以组合使用:

  1. 填充:用于填充空白位置的单个字符(默认为空格)。
  2. 对齐^(居中)、<(左对齐)、>(右对齐)。
  3. 宽度:输出的总宽度(整数)。
  4. 千位分隔符,(在数字中插入千位分隔符)。
  5. 精度.精度(浮点数小数位数或字符串截断长度)。
  6. 类型:指定值的表示类型(如整数、浮点数、十六进制等)。

字段详解与示例

1. 填充 + 对齐 + 宽度

语法:{:<填充字符><对齐方式><宽度>}

  • 对齐方式:^(居中)、<(左)、>(右)。
  • 默认填充字符为空格。

示例:

python

# 左对齐,宽度10,填充'-'
print("{0:-<10}".format("Hello"))  # 输出:'Hello-----'

# 右对齐,宽度8,填充'*'
print("{:*>8}".format(123))       # 输出:'*****123'

# 居中,宽度6,填充'.'
print("{:.^6}".format("Hi"))      # 输出:'..Hi..'

2. 千位分隔符(,

语法:{:,}

  • 自动在数字中添加千位分隔符(逗号)。

示例:

print("{:,}".format(1000000))     # 输出:'1,000,000'

3. 精度(.精度

语法:{:.精度}

  • 对浮点数:控制小数位数。
  • 对字符串:截断长度。

示例:

python

# 浮点数保留2位小数
print("{:.2f}".format(3.14159))   # 输出:'3.14'

# 字符串截取前3字符
print("{:.3}".format("Python"))   # 输出:'Pyt'

4. 类型转换

语法:{:类型}
常用类型:

  • b:二进制
  • d:十进制
  • x:十六进制(小写)
  • f:浮点数
  • %:百分比格式

示例:

# 二进制输出
print("{:b}".format(10))          # 输出:'1010'

# 十六进制输出
print("{:x}".format(255))         # 输出:'ff'

# 百分比格式(自动×100)
print("{:.2%}".format(0.25))      # 输出:'25.00%'

综合示例

# 组合使用:右对齐,宽度10,填充'0',千位分隔符,保留2位小数
print("{:0>10,.2f}".format(1234.567))  # 输出:'001,234.57'

总结表格

字段 符号 作用 示例
填充 任意字符 填充空白 {:*^10}***Hi***
对齐 ^ < > 居中/左/右对齐 {:<5}Hello
宽度 整数 输出总长度 {:8}' 123'
千位分隔符 , 数字添加逗号分隔 {:,}1,000,000
精度 .n 小数位数或字符串截断 {:.2f}3.14
类型 b d x 指定输出类型 {:x}ff

通过灵活组合这些字段,可以精确控制输出的格式。


random.seed()

random.seed() 方法归纳总结

random.seed() 用于初始化 Python 的随机数生成器,确保每次程序运行时生成的随机数序列相同(可复现性)。

语法

import random
random.seed([x])
  • x(可选):种子值(可以是整数、浮点数、字符串等)。
    • 如果省略或 x=None,则使用系统时间作为种子(每次运行结果不同)。
    • 如果指定 x,则每次运行程序时,相同的种子会生成相同的随机序列。

核心特点

  1. 种子相同 → 随机序列相同
    • 适用于需要可重复随机结果的场景(如测试、实验)。
  2. 默认种子基于系统时间
    • 不设置种子时,每次运行结果不同。
  3. 仅需调用一次
    • 在程序开始时调用一次即可影响后续所有随机函数(如 random(), randint())。

示例

示例 1:不设置种子(每次运行结果不同)

import random

# 不设置种子,结果随机
print(random.random())  # 每次运行输出不同,如 0.1234, 0.5678...

示例 2:设置固定种子(结果可复现)

import random

random.seed(42)  # 固定种子
print(random.random())  # 输出固定值:0.6394267984578837
print(random.randint(1, 10))  # 输出固定值:如 7(种子为42时)

示例 3:种子对序列的影响

import random

random.seed(100)
a = [random.randint(1, 100) for _ in range(3)]  # [15, 99, 61]

random.seed(100)  # 重置相同种子
b = [random.randint(1, 100) for _ in range(3)]  # 输出相同:[15, 99, 61]
print(a == b)  # True

常见用途

  1. 调试与测试
    • 确保随机生成的测试数据可复现。
  2. 机器学习/深度学习
    • 固定种子使实验可重复(如 numpytensorflow 也需设置种子)。
  3. 游戏开发
    • 生成相同的随机地图或关卡。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容