sleep
题目 暂停一秒输出
import time
# 循环4次
for i in range(4):
# 打印当前时间的后两位
print(str(int(time.time()))[-2:])
# 休眠1秒
time.sleep(1)
time.time() 是 Python 标准库 time 模块中的一个函数,用于获取当前时间的时间戳。
实现原理
time.time() 返回的是当前时间的时间戳,即从1970年1月1日00:00:00(也称为“Unix纪元”或“Epoch”)到当前时间的秒数。这个时间戳是一个浮点数,表示秒数,并且通常包含小数部分,用于表示更精确的时间。
用途
性能测量:可以通过记录代码执行前后的时间戳来计算代码的执行时间。 时间间隔计算:可以用来计算两个事件之间的时间间隔。 时间戳生成:可以用来生成一个唯一的时间戳,用于日志记录、数据标记等。
注意事项
时区问题:time.time() 返回的是UTC时间的时间戳,不考虑本地时区。 精度问题:虽然 time.time() 返回的是秒数,但它通常包含小数部分,以提供更高的时间精度。但在某些系统上,精度可能受到限制。 系统时钟调整:如果系统时钟被手动调整,使用 time.time() 计算的时间间隔可能会不准确
import time
# 获取当前时间的时间戳
current_time = time.time()
print("当前时间的时间戳:", current_time)
# 计算代码执行时间
start_time = time.time()
# 模拟一些操作
time.sleep(2)
end_time = time.time()
execution_time = end_time - start_time
print("代码执行时间(秒):", execution_time)
输出
当前时间的时间戳: 1704178730.837637
代码执行时间(秒): 2.000020980834961
时间显示
题目 暂停一秒输出,并格式化当前时间
import time
# 循环4次
for i in range(4):
# 打印当前时间
print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))
# 等待1秒
time.sleep(1)
下面是代码的详细解释:
time.time():获取当前时间的时间戳,即从1970年1月1日00:00:00开始按秒计算的偏移量。 time.localtime(time.time()):将时间戳转换为本地时间的结构化时间(struct_time对象)。 time.strftime('%Y-%m-%d %H:%M:%S', ...):将结构化时间格式化为指定的字符串格式。
养兔子
题目 有一只兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
# 输入繁殖几个月
month=int(input('繁殖几个月?: '))
# 初始化1月兔、2月兔、3月兔和成年兔的数量
month_1=1
month_2=0
month_3=0
month_elder=0
# 循环每个月
for i in range(month):
# 更新每个月兔子的数量
month_1,month_2,month_3,month_elder=month_elder+month_3,month_1,month_2,month_elder+month_3
# 输出每个月兔子的数量
print('第%d个月共'%(i+1),month_1+month_2+month_3+month_elder,'对兔子')
print('其中1月兔:',month_1)
print('其中2月兔:',month_2)
print('其中3月兔:',month_3)
print('其中成年兔:',month_elder)
在Python中,%d 是一种旧的字符串格式化方法,用于将整数插入到字符串中。它属于百分号格式化(也称为旧式字符串格式化)的一部分。这种格式化方法使用百分号 (%) 作为占位符,后面跟一个格式说明符来指定如何格式化值。
具体来说,%d 中的 d 表示十进制整数。当你使用 %d 时,它会被替换为后面提供的整数值。
例如:
name = "Alice"
age = 30
formatted_string = "My name is %s and I am %d years old." % (name, age)
print(formatted_string)
在这个例子中,%s 是一个字符串占位符,%d 是一个整数占位符。% (name, age) 部分提供了要插入到字符串中的实际值。运行这段代码会输出:
My name is Alice and I am 30 years old.