使用python变量写出字符串

2024-04-19 23:48:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图以字符串的形式写出2010-11、2011-12等年度范围。我现在使用的代码是:

date = ['200' + str(x) + '-' + str(x+1) for x in range(1,9)] + ['20' + str(x) + '-' + str(x+1) for x in range(10,16)]

哪个输出

['2001-2', '2002-3', '2003-4', '2004-5', '2005-6', '2006-7', '2007-8', '2008-9', '2010-11', '2011-12', '2012-13', '2013-14', '2014-15', '2015-16']

我如何在一行代码中编写此代码,而不是将年份分为两种情况<;10,>;10?

编辑7/5/20:已更改措辞以修复基于意见的问题


Tags: 字符串代码inltgt编辑fordate
3条回答

您可以尝试pandas.date\u rangehttps://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.date_range.html

你也可以看看这个论坛,我想这可能就是你想要的。 datetime to string with series in python pandas

使用f字符串更具可读性:

[f'200{x}-{x+1}' for x in range(1,9)]

你可以找到更多关于他们的信息here

可以使用python string formatting指定固定长度:

['2{:003d}-{:02d}'.format(x, x+1) for x in range(0,20)]

输出

['2000-01', '2001-02', '2002-03', '2003-04', '2004-05', '2005-06', '2006-07', '2007-08', '2008-09', '2009-10', '2010-11', '2011-12', '2012-13', '2013-14', '2014-15', '2015-16', '2016-17', '2017-18', '2018-19', '2019-20']

相关问题 更多 >