我有一个带有字符串格式的时区信息的时间戳,我想将其转换为使用我的本地时区显示正确的日期/时间.所以对于例如......我有
timestamp1 = 2011-08-24 13:39:00 +0800
Run Code Online (Sandbox Code Playgroud)
我想将此转换为时区偏移+1000到dsiplay
timestamp2 = 2011-08-24 15:39:00 +1000
Run Code Online (Sandbox Code Playgroud)
我尝试过使用pytz但是找不到很多显示如何使用偏移信息的例子.我对计算器展示了这个确切的问题找到一个其他的链接是这里.我希望有一些更好的方法可以使用pytz处理这个问题.感谢提前的所有建议:).
UPDATE
谢谢Cixate.我刚刚找到了与你的解决方案非常相似的解决方案.发现这些链接很有用 - LINK1和LINK2
为每个人发布解决方案都会带来好处
from datetime import datetime
import sys, os
import pytz
from dateutil.parser import parse
datestr = "2011-09-09 13:20:00 +0800"
dt = parse(datestr)
print dt
localtime = dt.astimezone (pytz.timezone('Australia/Melbourne'))
print localtime.strftime ("%Y-%m-%d %H:%M:%S")
2011-09-09 15:20:00
Run Code Online (Sandbox Code Playgroud) 我有一个有几个领域的表格.我通过表单验证对每个字段进行单独的验证检查.但是,在将用户重定向到不同视图之前,我还需要检查是否填写了少量字段.我希望我能以某种方式将错误附加到forms.non_field_errors,因为它不适用于特定字段,但我不确定这是什么正确的语法.我在网上查了一下,发现..
form.errors['__all__'] = form.error_class(["error msg"])
Run Code Online (Sandbox Code Playgroud)
这会显示错误消息,但它似乎也会弄乱其他页面,如果我点击其他任何内容,则会显示错误消息.
我试过了
form._errors[NON_FIELD_ERRORS] = form.error_class()
Run Code Online (Sandbox Code Playgroud)
这导致'NoneType'对象没有属性'setdefault'错误.
我试过了
form.non_field_errors().append("Please complete your profile in order to access the content.")
Run Code Online (Sandbox Code Playgroud)
这似乎没有做任何事情,我无法在视图上看到错误消息.
最好的方法是什么?理想情况下,我不想在表单的干净方法中这样做.我觉得我应该能够在视图中向表单添加错误.
我需要将日期的非数字数据绘制为简单的折线图.我正在使用matplotlib.
这是一些示例代码.
import matplotlib.pyplot as plt
xticks=['Jan','Feb','Mar','April','May']
x=[1,2,3,4,5]
yticks = ['Windy', 'Sunny', 'Rainy', 'Cloudy', 'Snowy']
y=[2,1,3,5,4]
plt.plot(x,y,'bo') #.2,.1,.7,.8
plt.subplots_adjust(left =0.2)
plt.xticks(x,xticks)
plt.yticks(y,yticks)
plt.show()
Run Code Online (Sandbox Code Playgroud)

我想开始刻度标签,从原点留下一些空间.这样他们看起来不会很挤.我应该使用Fixedlocator吗?此外,我希望图表是一个显示每个点标记的线,如本例所示.我怎样才能做到这一点?
我在使用Python多处理包中的pool.map传递数据库连接对象或游标对象时遇到了一些困难.基本上,我想创建一个工作池,每个工作池都有自己的状态和数据库连接,这样它们就可以并行执行查询.
我尝试过这些方法,但是我在python中得到了一个picklingerror -
第二个链接正是我需要做的,这意味着我希望每个进程在启动时打开数据库连接,然后使用该连接来处理传入的数据/ args.
这是我的代码.
import multiprocessing as mp
def process_data((id,db)):
print 'in processdata'
cursor = db.cursor()
query = ....
#cursor.execute(query)
#....
.....
.....
return row
`if __name__ == '__main__':
db = getConnection()
cursor = db.cursor()
print 'Initialised db connection and cursor'
inputs = [1,2,3,4,5]
pool = mp.Pool(processes=2)
result_list = pool.map(process_data,zip(inputs,repeat(db)))
#print result_list
pool.close()
pool.join()
Run Code Online (Sandbox Code Playgroud)
`
这会导致以下错误 -
`Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
self.run()
File "/usr/lib/python2.6/threading.py", line …Run Code Online (Sandbox Code Playgroud) python ×4
axis ×1
database ×1
django ×1
django-forms ×1
initializer ×1
matplotlib ×1
pool ×1
pytz ×1
timestamp ×1
timezone ×1