Python 日期/时间格式
我正在创建一个python脚本,该脚本将显示特定日期的忙、无应答和失败呼叫,但我仍停留在显示日期的格式上。Twilio的开始时间和结束时间“变量”打印如下:“2016年7月25日星期一16:03:53+0000”。我想去掉日期名称和逗号,因为我正在将结果保存到csv文件(script_name.py>some_file.csv)中,日期名称后面的逗号有点搞乱了csv结构 在settings.py文件中,时区变量设置为正确的(美国/芝加哥),而USE_TZ变量设置为true。但无论如何,输出仍然是UTC 我对Python一无所知,我尝试将call.start\u time解析为datetime的操作失败了。如果它是一个给定的值,比如start_time='2016-07-26',我会知道怎么做,但当值来自for call in client.calls.list时,我不知道怎么做 任何指导都将不胜感激 谢谢Python 日期/时间格式,python,datetime,formatting,twilio,Python,Datetime,Formatting,Twilio,我正在创建一个python脚本,该脚本将显示特定日期的忙、无应答和失败呼叫,但我仍停留在显示日期的格式上。Twilio的开始时间和结束时间“变量”打印如下:“2016年7月25日星期一16:03:53+0000”。我想去掉日期名称和逗号,因为我正在将结果保存到csv文件(script_name.py>some_file.csv)中,日期名称后面的逗号有点搞乱了csv结构 在settings.py文件中,时区变量设置为正确的(美国/芝加哥),而USE_TZ变量设置为true。但无论如何,输出仍然是
from twilio.rest import TwilioRestClient
from datetime import datetime
from pytz import timezone
from dateutil import tz
# To find these visit https://www.twilio.com/user/account
account_sid = "**********************************"
auth_token = "**********************************"
client = TwilioRestClient(account_sid, auth_token)
for call in client.calls.list(
start_time="2016-07-25",
end_time="2016-07-25",
status='failed',
):
print(datetime.datetime.strptime(call.start_time, "%Y-%m-%d %H:%M:%S"))
我提供的代码没有简单的日期和时间格式
from datetime import datetime
from time import sleep
print('The Time is shown below!')
while True:
time = str(datetime.now())
time = list(time)
for i in range(10):
time.pop(len(time)-1)
time = ('').join(time)
time = time.split()
date = time[0]
time = time[1]
print('Time: '+time+', Date: '+date, end='\r')
sleep(1)
但是如果你只想把“星期一,2016年7月25日16:03:53+ 0000”格式化,就像你刚才说的那样,就把这一天考虑一下:
day = "Mon, 25 Jul 2016 16:03:53 +0000"
# Convert to an array
day = list(day)
# Remove first 5 characters
for i in range(5):
day.pop(0)
day = ('').join(day)
print(day)
# You can use if statements to determine which day it is to decide how many characters to remove.
>>> "25 Jul 2016 16:03:53 +0000"
我提供的代码没有简单的日期和时间格式
from datetime import datetime
from time import sleep
print('The Time is shown below!')
while True:
time = str(datetime.now())
time = list(time)
for i in range(10):
time.pop(len(time)-1)
time = ('').join(time)
time = time.split()
date = time[0]
time = time[1]
print('Time: '+time+', Date: '+date, end='\r')
sleep(1)
但是如果你只想把“星期一,2016年7月25日16:03:53+ 0000”格式化,就像你刚才说的那样,就把这一天考虑一下:
day = "Mon, 25 Jul 2016 16:03:53 +0000"
# Convert to an array
day = list(day)
# Remove first 5 characters
for i in range(5):
day.pop(0)
day = ('').join(day)
print(day)
# You can use if statements to determine which day it is to decide how many characters to remove.
>>> "25 Jul 2016 16:03:53 +0000"
您需要解析的格式由Twillo提供的时间戳决定。您可能需要以下格式字符串来正确解析时间戳:
print(datetime.datetime.strptime(call.start_time, "%a, %d %b %Y %H:%M:%S %z"))
关于格式化字符串的一个很好的指南是
另一个用于从字符串延迟转换日期的好库是python dateutil库,位于。需要解析的格式由Twillo提供的时间戳决定。您可能需要以下格式字符串来正确解析时间戳:
print(datetime.datetime.strptime(call.start_time, "%a, %d %b %Y %H:%M:%S %z"))
关于格式化字符串的一个很好的指南是
另一个用于从字符串延迟转换日期的好库是python dateutil库,位于。这是一个非常奇怪的解决方法
strtime
可以很好地解析它,您的整个第二块代码只需day[5:://code>即可完成。这是一个非常奇怪的解决方法strtime
可以很好地解析它,您的整个第二块代码只需day[5:://code>即可完成。