Python 日期的 F-String 格式,如 String
Python F-String formatting for date like String
我想使用 Python 3.8 提供的 F-Strings 来按照我喜欢的方式格式化字符串。
原来的String/Strings是这样的:
25.02.2021
17.02.2021
17.02.2021
17.02.2021
11.03.2021
17.02.2021
17.02.2021
04.03.2021
现在我想以“相反的方式”改变它们,所以我希望它们看起来像这样:2021.03.12
所以 YYYY.MM.DD
我试过了:line = f'{line:%Y.%m.%d}'
行是原来的Stringname。
但是如果我使用它,我会得到这个错误:
line = f'{line:%Y.%m.%d}'
ValueError: Invalid format specifier
谢谢 - 褪色
错误消息是因为您的数据是字符串而不是 datetime
s,并且格式说明符 :%Y.%m.%d
仅适用于 datetime
s。您 可以 使用 strptime()
将您的字符串解析为 datetime
,但是因为您只想颠倒顺序,您可以这样做:
>>> data = '25.02.2021'
>>> '{}.{}.{}'.format(*reversed(data.split(".")))
'2021.02.25'
还有其他方法可以做到这一点,但您似乎想使用字符串格式来做到这一点。
您可以尝试用 .
拆分它,然后通过反转它来加入。
这是简单的解决方案
line = '.'.join(line.split('.')[::-1])
我想使用 Python 3.8 提供的 F-Strings 来按照我喜欢的方式格式化字符串。
原来的String/Strings是这样的:
25.02.2021
17.02.2021
17.02.2021
17.02.2021
11.03.2021
17.02.2021
17.02.2021
04.03.2021
现在我想以“相反的方式”改变它们,所以我希望它们看起来像这样:2021.03.12
所以 YYYY.MM.DD
我试过了:line = f'{line:%Y.%m.%d}'
行是原来的Stringname。
但是如果我使用它,我会得到这个错误:
line = f'{line:%Y.%m.%d}'
ValueError: Invalid format specifier
谢谢 - 褪色
错误消息是因为您的数据是字符串而不是 datetime
s,并且格式说明符 :%Y.%m.%d
仅适用于 datetime
s。您 可以 使用 strptime()
将您的字符串解析为 datetime
,但是因为您只想颠倒顺序,您可以这样做:
>>> data = '25.02.2021'
>>> '{}.{}.{}'.format(*reversed(data.split(".")))
'2021.02.25'
还有其他方法可以做到这一点,但您似乎想使用字符串格式来做到这一点。
您可以尝试用 .
拆分它,然后通过反转它来加入。
这是简单的解决方案
line = '.'.join(line.split('.')[::-1])