关于一个简单字符串格式化问题
print("%a"%10)10
1.为什么%a会返回%w就不可以了
temp=time.localtime(os.path.getctime("python.exe"))
print(time.strftime("%d %b %Y %H:%M:%S",temp))
2.就是这段代码中为什么是%d%b%Y%H%M%S,这些字母的条件是什么呢?可以换成其他的吗?
3.上面代码中strtime()的作用
谢谢各位{:10_266:} 现在应该都用f-string了把。。。 Victor0321 发表于 2022-7-15 00:24
现在应该都用f-string了把。。。
这是小甲鱼书上的代码 1.a=ascii; 字符串格式化没有w这个选项。
2.strftime里的%等语法不能算字符串格式化,是属于strftime专用格式表示。基础知识看教程:https://www.runoob.com/python3/python3-date-time.html
3.同上,看上面的链接教程。 Victor0321 发表于 2022-7-15 00:24
现在应该都用f-string了把。。。
虽然看上去,三个字符串格式化中,现在比较多人用 f-string(因为简单好用),但其实其速度上是比较慢的(当然,在简单代码里是感受不到的)
这就是为什么 Python 还保留最初的字符串格式化 % 直到现在。
速度测试:import time
a = 15
b = 3.14
c = 'A'
start = time.time()
for n in range(10000000):
s = "%d %f %c"%(a, b, c)
end = time.time()
print("% string: ", end - start)
start = time.time()
for n in range(10000000):
s = "{} {} {}".format(a, b, c)
end = time.time()
print("format string: ", end - start)
start = time.time()
for n in range(10000000):
s = f"{a} {b} {c}"
end = time.time()
print("f-string", end - start) 傻眼貓咪 发表于 2022-7-15 11:57
虽然看上去,三个字符串格式化中,现在比较多人用 f-string(因为简单好用),但其实其速度上是比较慢的 ...
感谢
页:
[1]