Questions tagged «python»

Python是一种多范式,动态类型的多用途编程语言。它旨在快速学习,理解和使用并强制使用干净统一的语法。请注意,Python 2自2020年1月1日起已不再受支持。不过,对于特定于版本的Python问题,请添加[python-2.7]或[python-3.x]标签。使用Python变体或库(例如Jython,PyPy,Pandas,Numpy)时,请将其包含在标签中。

3
python:将字典追加到列表中-我看到了类似行为的指针
我在python解释器中尝试了以下操作: >>> >>> a = [] >>> b = {1:'one'} >>> a.append(b) >>> a [{1: 'one'}] >>> b[1] = 'ONE' >>> a [{1: 'ONE'}] >>> 在这里,将字典'b'附加到列表'a'之后,我将更改与字典'a'中的键1对应的值。此更改也以某种方式反映在列表中。当我将字典添加到列表中时,我不仅会添加字典的值吗?好像我已将指向字典的指针附加到列表中,因此对字典的更改也反映在列表中。 我不希望更改反映在列表中。我该怎么做? 感谢您的时间!

7
在python中,如何将类对象转换为dict
假设我在python中有一个简单的类 class Wharrgarbl(object): def __init__(self, a, b, c, sum, version='old'): self.a = a self.b = b self.c = c self.sum = 6 self.version = version def __int__(self): return self.sum + 9000 def __what_goes_here__(self): return {'a': self.a, 'b': self.b, 'c': self.c} 我可以很容易地将其转换为整数 >>> w = Wharrgarbl('one', 'two', 'three', 6) >>> int(w) …
85 python 

3
计算两列之间的Pandas DataFrame时间差异(以小时和分钟为单位)
我在数据框中有两列fromdate和todate。 import pandas as pd data = {'todate': [pd.Timestamp('2014-01-24 13:03:12.050000'), pd.Timestamp('2014-01-27 11:57:18.240000'), pd.Timestamp('2014-01-23 10:07:47.660000')], 'fromdate': [pd.Timestamp('2014-01-26 23:41:21.870000'), pd.Timestamp('2014-01-27 15:38:22.540000'), pd.Timestamp('2014-01-23 18:50:41.420000')]} df = pd.DataFrame(data) 我添加了一个新列,diff以使用找出两个日期之间的差异 df['diff'] = df['fromdate'] - df['todate'] 我得到了该diff列,但是days当超过24小时时,它包含。 todate fromdate diff 0 2014-01-24 13:03:12.050 2014-01-26 23:41:21.870 2 days 10:38:09.820000 1 2014-01-27 11:57:18.240 2014-01-27 15:38:22.540 0 days 03:41:04.300000 …

8
如何为Numpy数组添加新尺寸?
我从一个图像的numpy数组开始。 In[1]:img = cv2.imread('test.jpg') 形状是您可能期望的640x480 RGB图像。 In[2]:img.shape Out[2]: (480, 640, 3) 但是,我拥有的这张图像是一帧视频,长度为100帧。理想情况下,我希望有一个数组,其中包含该视频中的所有数据,从而img.shape返回(480, 640, 3, 100)。 将下一帧(即另一组图像数据,另一个480 x 640 x 3数组)添加到我的初始数组的最佳方法是什么?
85 python  arrays  opencv  numpy 

5
如何读取泡菜文件?
我创建了一些数据并将其存储了几次,如下所示: with open('filename', 'a') as f: pickle.dump(data, f) 每次文件大小增加,但是当我打开文件时 with open('filename', 'rb') as f: x = pickle.load(f) 我只能看到上次的数据。如何正确读取文件?
85 python  pickle 

7
Python中有效的日期范围重叠计算?
我有两个日期范围,每个范围都由开始日期和结束日期确定(显然,datetime.date()实例)。这两个范围可以重叠也可以不重叠。我需要重叠的天数。当然,我可以用两个日期范围内的所有日期预填充两个集合,并执行一个集合交集,但这可能效率不高...除了长距离的if-elif部分覆盖所有情况的解决方案,还有其他更好的方法吗?


9
在不写入磁盘的情况下下载和解压缩.zip文件
我设法使第一个python脚本起作用,该脚本从URL下载.ZIP文件的列表,然后继续提取ZIP文件并将其写入磁盘。 我现在无所适从,无法实现下一步。 我的主要目标是下载并提取zip文件,并通过TCP流传递内容(CSV数据)。如果可以的话,我宁愿不实际将任何zip或解压缩的文件写入磁盘。 这是我当前的脚本,可以运行,但是不幸的是必须将文件写入磁盘。 import urllib, urllister import zipfile import urllib2 import os import time import pickle # check for extraction directories existence if not os.path.isdir('downloaded'): os.makedirs('downloaded') if not os.path.isdir('extracted'): os.makedirs('extracted') # open logfile for downloaded data and save to local variable if os.path.isfile('downloaded.pickle'): downloadedLog = pickle.load(open('downloaded.pickle')) else: downloadedLog = …
85 python  unzip 

6
在Python中,我可以调用导入模块的main()吗?
在Python中,我有一个模块myModule.py,其中定义了一些函数和一个main(),它接受了一些命令行参数。 我通常从bash脚本中调用此main()。现在,我想将所有内容放入一个小包装中,因此我想也许可以将我简单的bash脚本转换为Python脚本并将其放入包装中。 因此,实际上如何从MyFormerBashScript.py的main()函数调用myModule.py的main()函数?我什至可以那样做吗?如何传递任何参数?

6
大熊猫:DataFrame行上的复杂过滤器
我想通过每行的功能来过滤行,例如 def f(row): return sin(row['velocity'])/np.prod(['masses']) > 5 df = pandas.DataFrame(...) filtered = df[apply_to_all_rows(df, f)] 或者再举一个更复杂,人为的例子, def g(row): if row['col1'].method1() == 1: val = row['col1'].method2() / row['col1'].method3(row['col3'], row['col4']) else: val = row['col2'].method5(row['col6']) return np.sin(val) df = pandas.DataFrame(...) filtered = df[apply_to_all_rows(df, g)] 我该怎么办?
85 python  pandas 


5
引发异常与返回函数中无?
在Python中的用户定义函数中,更好的做法是:raise异常或return None?例如,我有一个在文件夹中查找最新文件的函数。 def latestpdf(folder): # list the files and sort them try: latest = files[-1] except IndexError: # Folder is empty. return None # One possibility raise FileNotFoundError() # Alternative else: return somefunc(latest) # In my case, somefunc parses the filename 另一个选择是保留异常并在调用者代码中处理它,但我认为处理aFileNotFoundError比处理a更清楚IndexError。还是用其他名称重新引发异常是不好的形式吗?

5
如何在(最好是纯净的)Python中解码QR码图像?
TL; DR:我需要一种使用(最好是纯净的)Python从图像文件中解码QR码的方法。 我有一个带有QR码的jpg文件,我想使用Python对其进行解码。我找到了一些声称可以做到这一点的库: PyQRCode(这里的网站)可以通过简单地提供如下路径来解码图像中的二维码: import sys, qrcode d = qrcode.Decoder() if d.decode('out.png'): print 'result: ' + d.result else: print 'error: ' + d.error 因此,我只是使用安装了它sudo pip install pyqrcode。我觉得奇怪但上面的示例代码的东西,是它唯一的进口qrcode(而不是pyqrcode虽然)因为我觉得qrcode是指这个库只能生成QR码图像它有点儿搞糊涂了。所以我用pyqrcode和尝试了上面的代码qrcode,但是都在第二行说了失败AttributeError: 'module' object has no attribute 'Decoder'。此外,该网站引用了Ubuntu 8.10(已发布6年多)了,我找不到它的公共(git或其他)存储库来检查最新提交。所以我转到下一个库: ZBar(在这里的网站)声称是"an open source software suite for reading bar codes from various sources, such as image files."这样,所以我尝试在运行的Mac …
85 python  decode  qr-code  zxing  zbar 

18
未设置Django CSRF Coo​​kie
我有一阵子的问题,我没有设置CSRF Coo​​kie。请看下面的代码 蟒蛇 def deposit(request,account_num): if request.method == 'POST': account = get_object_or_404(account_info,acct_number=account_num) form_=AccountForm(request.POST or None, instance=account) form = BalanceForm(request.POST) info = str(account_info.objects.filter(acct_number=account_num)) inf=info.split() if form.is_valid(): #cd=form.cleaned_data now = datetime.datetime.now() cmodel = form.save() cmodel.acct_number=account_num #RepresentsInt(cmodel.acct_number) cmodel.bal_change="%0.2f" % float(cmodel.bal_change) cmodel.total_balance="%0.2f" %(float(inf[1]) + float(cmodel.bal_change)) account.balance="%0.2f" % float(cmodel.total_balance) cmodel.total_balance="%0.2f" % float(cmodel.total_balance) #cmodel.bal_change=cmodel.bal_change cmodel.issued=now.strftime("%m/%d/%y %I:%M:%S …
85 python  django 

2
TypeError:“ RelatedManager”对象不可迭代
Django的 我有下一个型号: class Group(models.Model): name = models.CharField(max_length=100) parent_group = models.ManyToManyField("self", blank=True) def __unicode__(self): return self.name class Block(models.Model): name = models.CharField(max_length=100) app = models.CharField(max_length=100) group = models.ForeignKey(Group) def __unicode__(self): return self.name 例如,块b1具有g1组。用它的名字,我想从组g1中获取所有块。我写了下一个递归函数: def get_blocks(group): def get_needed_blocks(group): for block in group.block_set: blocks.append(block) if group.parent_group is not None: get_needed_blocks(group.parent_group) blocks = [] get_needed_blocks(group) …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.