相关疑难解决方法(0)

没有零填充的Python日期时间格式

是否有一种打印Python日期时间的格式,不会在日期和时间使用零填充?

格式我现在正在使用:

mydatetime.strftime('%m/%d/%Y %I:%M%p')
Run Code Online (Sandbox Code Playgroud)

结果: 02/29/2012 05:03 PM
期望: 2/29/2012 5:03 PM

什么格式将月份表示为"2"而不是"02",时间表示为"5:03 PM"而非"05:03 PM"

python formatting datetime zero-pad

70
推荐指数
5
解决办法
6万
查看次数

在当前日期PYTHON中添加一年

我从数据库中获取了一个带有以下变量日期

{{ i.operation_date }}
Run Code Online (Sandbox Code Playgroud)

我得到了一个像这样的价值

April 1, 2013
Run Code Online (Sandbox Code Playgroud)

我需要在上面添加一年,这样我才能得到

April 1, 2014
Run Code Online (Sandbox Code Playgroud)

请建议,我该怎么做?

python date

49
推荐指数
8
解决办法
7万
查看次数

从Python日期/时间获取"下午2:35"而不是"02:35 PM"?

我对Python仍然有点慢,所以除了文档中明显的内容之外,我还没有弄明白这一点等等.

我曾经使用过Django,他们通过模板标签添加了一些日期时间格式化选项,但是在常规python代码中如何才能获得12 小时不带前导零的小时

有一种直截了当的方法吗?我正在查看"strftime()"的2.5和2.6文档,并且在这种情况下似乎没有格式化选项.

我应该使用其他东西吗?

随意添加任何其他时间格式提示,这些提示在文档中并不明显.=)

python formatting time datetime

28
推荐指数
4
解决办法
1万
查看次数

为什么"%-d"或"%-e"会删除前导空格或零?

在问题904928(Python strftime - 没有领先0的日期?) Ryan回答:

实际上我有同样的问题,我意识到,如果你在%和字母之间添加一个连字符,你可以删除前导零.

例如%Y /% - m /% - d.

我遇到了同样的问题,这是一个很好的解决方案,但是,为什么这样做呢?

>>> import datetime
>>> datetime.datetime(2015, 3, 5).strftime('%d')
'05'

>>> datetime.datetime(2015, 3, 5).strftime('%-d')
'5'

# It also works with a leading space
>>> datetime.datetime(2015, 3, 5).strftime('%e')
' 5'

>>> datetime.datetime(2015, 3, 5).strftime('%-e')
'5'

# Of course other numbers doesn't get stripped
>>> datetime.datetime(2015, 3, 15).strftime('%-e')
'15'
Run Code Online (Sandbox Code Playgroud)

我找不到任何关于这方面的文件?- > python datetime docs/python string operations

看起来这在Windows机器上不起作用,我不使用Windows,但知道它为什么不起作用会很有趣?

python datetime strftime python-2.7

20
推荐指数
1
解决办法
3649
查看次数

如何在没有前导零或前导空格的情况下编写时间小时?

在Ruby 1.9程序中,我想格式化当前时间Thu 1:51 PM.我应该在一天中的某个小时使用什么格式的代码(1在本例中)?

Time.now.strftime '%a %I:%M %p' #=> "Thu 01:51 PM"
Time.now.strftime '%a %l:%M %p' #=> "Thu  1:51 PM"
Run Code Online (Sandbox Code Playgroud)

%I有一个前导零(01).%l有一个领先的空间( 1).我没有在strftime文档中看到小时的任何其他格式代码.我无法使用,.lstrip因为空间位于字符串的中间.我可以使用.gsub(/ +/, " "),但我想知道是否有一个更少的hacky,更简单的方式.

ruby time strftime time-format ruby-1.9

17
推荐指数
1
解决办法
4008
查看次数

在Python中摆脱日期字符串的前导零?

是否有一种灵活的方法来摆脱Python中日期字符串的前导零?

在下面的例子中,我想得到12/1/2009而不是12/01/2009.我想我可以使用正则表达式.但对我来说,这似乎有点矫枉过正.有更好的解决方案吗?

>>> time.strftime('%m/%d/%Y',time.strptime('12/1/2009', '%m/%d/%Y'))
'12/01/2009'
Run Code Online (Sandbox Code Playgroud)

也可以看看

Python strftime - 没有前导0的日期?

python date leading-zero

15
推荐指数
2
解决办法
8528
查看次数

如何将变量一起添加到控制分隔的新变量中

假设我已经声明了三个变量,它们是一个日期,我如何将它们组合成一个新的变量,我可以通过简单地打印新的变量名称以正确的1/2/03格式打印它们.

month = 1
day = 2
year = 03

date = month, day, year  <<<<< What would this code have to be? 

print(date)
Run Code Online (Sandbox Code Playgroud)

我知道如果我单独调用所有三个变量,我可以在print语句中设置sep ='/'参数,但这意味着我不能在print语句中添加另外的文本而不用/分隔.因此我需要一个我可以调用的变量.

python

2
推荐指数
1
解决办法
72
查看次数

没有前导零的日期时间对象

我已经遇到好几个答案(123关于)去除前导零python3 datetime对象。

投票最多的答案之一指出:

在 Windows 上,您将使用 #,例如 %Y/%#m/%#d

上面的代码对我不起作用。我还尝试了 Linux 解决方案,它使用了-而不是#,但没有成功。

代码

loop_date = "1950-1-1"
date_obj = datetime.strptime(loop_date, '%Y-%m-%d') # or '%Y-%#m-%#d' which produces the errors below
date_obj += timedelta(days=1)
print(date_obj)
# This the prints `1954-01-02` but I need `1954-1-2`
Run Code Online (Sandbox Code Playgroud)

追溯:

Traceback (most recent call last):
  File "C:/collect_games.py", line 84, in <module>
    date_obj = datetime.strptime(loop_date, '%Y-%-m-%d')
  File "E:\Anaconda3\lib\_strptime.py", line 565, in _strptime_datetime
    tt, …
Run Code Online (Sandbox Code Playgroud)

python datetime python-3.x

2
推荐指数
1
解决办法
5381
查看次数