我正在努力做一个进度条.
是否可以计算脚本上的执行行数并将每个执行行与一个函数相关联,以便每行或每5行执行一次?
我的计划是每次执行一行时更新进度条.
可能吗?我可以使用装饰器来做吗?
下面两种选择中的哪一种更有效?有什么建议可以进一步改进吗?
备选方案A:
for i in BAR_Items:
if BAR_Items[i] != A and SHAPE[i+"_SHP"] != A: continue
if i in Selection:
Selection.remove(i)
BAR_Items[i].clearActions()
BAR_Items[i].add(vizact.spinTo(axisAngle=[0,1,0,90],speed=300))
VFrame.SetStatusText(frame, i + " has been deselected. "+ str(Selection))
else:
Selection.append(i)
BAR_Items[i].add(vizact.spin(0,1,0,90,viz.FOREVER))
VFrame.SetStatusText(frame, i + " selected. " + str(Selection))
break
Run Code Online (Sandbox Code Playgroud)
备选方案B:
for i in BAR_Items:
if BAR_Items[i] == A or SHAPE[i+"_SHP"] == A:
if i in Selection:
Selection.remove(i)
BAR_Items[i].clearActions()
BAR_Items[i].add(vizact.spinTo(axisAngle=[0,1,0,90],speed=300))
VFrame.SetStatusText(frame, i + " has been deselected. "+ str(Selection))
else:
Selection.append(i)
BAR_Items[i].add(vizact.spin(0,1,0,90,viz.FOREVER))
VFrame.SetStatusText(frame, i + " selected. …Run Code Online (Sandbox Code Playgroud) 为什么在cursor.execute()之后执行两次cursor.fetchall()时什么也没有得到?有什么办法可以防止这种情况发生吗?我需要将信息存储在变量上吗?它应该这样工作吗?
我有很多列表,与气象站提供的列表完全相同.
但是,我如何将两个日常观察"合并"为一个?(第一组日常观察中可用的记录永远不会出现在第二组上).
['82294', '04/03/2002', '0000', '', '30.9', '', '', '', '26.1', '93', '1.554', '']
['82294', '04/03/2002', '1200', '24', '', '22', '', '', '', '', '', '']
['82294', '05/03/2002', '0000', '', '29.9', '', '', '', '25.62', '92.5', '0.863333', '']
['82294', '05/03/2002', '1200', '11', '', '23.2', '', '', '', '', '', '']
['82294', '06/03/2002', '0000', '', '31.6', '', '', '', '27.12', '87.5', '1.381333', '']
['82294', '06/03/2002', '1200', '0.2', '', '22.6', '', '', '', '', '', '']
['82294', '07/03/2002', '0000', '', '32.2', '', …Run Code Online (Sandbox Code Playgroud) 我一直在尝试优化以下两个嵌套循环:
def startbars(query_name, commodity_name):
global h_list
nc, s, h_list = [], {}, {}
query = """ SELECT wbcode, Year, """+query_name+"""
FROM innovotable WHERE commodity='"""+commodity_name+"""' and
"""+query_name+""" != 'NULL' """
rows = cursor.execute(query)
for row in rows:
n = float(row[2])
s[str(row[0])+str(row[1])] = n
nc.append(n)
for iso in result:
try:
for an_year in xrange(1961, 2031, 1):
skey = iso+str(an_year)
h_list[skey] = 8.0 / max(nc) * s[skey]
except:
pass
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?谢谢.
这是我在sqlite/python中使用的查询:
Select wbCode from CountriesList_A
Run Code Online (Sandbox Code Playgroud)
但是我希望有一些IF语句只返回在CountriesListB中的项目.
建议?非常感谢你.
这就是我一直在使用的:
for i in iter(SHAPES):
SHAPES[i].drawOrder(97)
SHAPES[i].alpha(CFG["SHP_alpha"])
.
.
Run Code Online (Sandbox Code Playgroud)
这就是我的想法:
for i, v in app.SHAPES.items():
v.drawOrder(97)
v.alpha(CFG["SHP_alpha"])
.
.
Run Code Online (Sandbox Code Playgroud)
我应该使用哪两个?有没有其他方法可以做到这一点?
如果我有一个字符串
mystring = "1212, 1215, 2132, 2312, 3333"
Run Code Online (Sandbox Code Playgroud)
将其转换为列表的推荐方法是什么?如在
mylist = [1212, 1215, 2132, 2312, 3333]
Run Code Online (Sandbox Code Playgroud)
请注意,mystring也可以采用单个值,如mystring ="1212"
当使用mechanize来改变表单中项目的状态时,我需要在Python中创建一个列表,如下所示:
['2009', '2008', '2007', '2006', '2005', '2004',]
Run Code Online (Sandbox Code Playgroud)
列表必须以尾随逗号结尾,否则它将无效.例如,以下代码有效:
br = mechanize.Browser()
br.select_form(nr=0)
br['ctl03'] = ['2009', '2008', '2007',]
Run Code Online (Sandbox Code Playgroud)
但是,以下代码不起作用:
br = mechanize.Browser()
br.select_form(nr=0)
br['ctl03'] = ['2009', '2008', '2007']
Run Code Online (Sandbox Code Playgroud)
这是我不使用尾随逗号时得到的错误消息:
Traceback (most recent call last):
File "C:/Users/Renato/PycharmProjects/Agrolink/faostat.py", line 43, in <module>
br['ctl03$DesktopThreePanes1$ThreePanes$ctl01$TMyears'] = ['2009', '2008', '2007']
File "C:\Python26\lib\site-packages\mechanize\_form.py", line 2782, in __setitem__
control.value = value
File "C:\Python26\lib\site-packages\mechanize\_form.py", line 1977, in __setattr__
self._set_value(value)
File "C:\Python26\lib\site-packages\mechanize\_form.py", line 1985, in _set_value
raise TypeError("ListControl, must set a sequence")
TypeError: ListControl, must set a sequence
Process finished …Run Code Online (Sandbox Code Playgroud) python ×9
list ×3
loops ×3
string ×2
csv ×1
dictionary ×1
mechanize ×1
nested-loops ×1
optimization ×1
performance ×1
sql ×1
sqlite ×1