Questions tagged «python»

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

3
如何给熊猫/ matplotlib条形图自定义颜色
我刚刚开始使用pandas / matplotlib替代Excel来生成堆积的条形图。我遇到了一个问题 (1)默认颜色表中只有5种颜色,因此如果我的类别超过5种,则颜色会重复。如何指定更多颜色?理想情况下,具有起始颜色和结束颜色的渐变,以及在两者之间动态生成n种颜色的方法? (2)颜色在视觉上不太令人满意。如何指定一组自定义的n种颜色?或者,渐变也将起作用。 下面的示例说明了以上两个方面: 4 from matplotlib import pyplot 5 from pandas import * 6 import random 7 8 x = [{i:random.randint(1,5)} for i in range(10)] 9 df = DataFrame(x) 10 11 df.plot(kind='bar', stacked=True) 输出是这样的:

3
使用列表理解嵌套循环
如果我有两个字符串'abc'和'def',则可以使用两个for循环获取它们的所有组合: for j in s1: for k in s2: print(j, k) 但是,我希望能够使用列表理解来做到这一点。我已经尝试了许多方法,但是从未尝试过。有谁知道如何做到这一点?

8
熊猫:按时间间隔滚动平均值
我是Pandas的新手。。。我有一堆轮询数据。我想计算一个滚动平均值,以便基于三天的窗口来获取每天的估算值。据我从这个问题可以理解,rolling_ *函数根据指定数量的值而不是特定的日期时间范围来计算窗口。 有实现该功能的其他功能吗?还是我坚持自己写? 编辑: 样本输入数据: polls_subset.tail(20) Out[185]: favorable unfavorable other enddate 2012-10-25 0.48 0.49 0.03 2012-10-25 0.51 0.48 0.02 2012-10-27 0.51 0.47 0.02 2012-10-26 0.56 0.40 0.04 2012-10-28 0.48 0.49 0.04 2012-10-28 0.46 0.46 0.09 2012-10-28 0.48 0.49 0.03 2012-10-28 0.49 0.48 0.03 2012-10-30 0.53 0.45 0.02 2012-11-01 0.49 0.49 …




18
错误:没有名为psycopg2.extensions的模块
我正在尝试为django项目设置PostgreSQL数据库,由于对上一个问题的答复,我相信我现在已经完成了。为django项目设置postgreSQL数据库时遇到了问题。我现在试图在终端中运行命令'python manage.py runserver'来启动我的本地主机,但是当我运行该命令时,我看到此响应... Error: No module named psycopg2.extensions 我不确定这是什么意思-我曾尝试下载psycopg2,但似乎找不到使用自制软件下载psycopg2的方法。我已经尝试过easy_install,pip install和sudo,但是所有返回的错误都是这样的... Downloading http://www.psycopg.org/psycopg/tarballs/PSYCOPG-2-4/psycopg2-2.4.5.tar.gz Processing psycopg2-2.4.5.tar.gz Writing /tmp/easy_install-l7Qi62/psycopg2-2.4.5/setup.cfg Running psycopg2-2.4.5/setup.py -q bdist_egg --dist-dir /tmp/easy_install-l7Qi62/psycopg2-2.4.5/egg-dist-tmp-PBP5Ds no previously-included directories found matching 'doc/src/_build' unable to execute gcc-4.0: No such file or directory error: Setup script exited with error: command 'gcc-4.0' failed with exit status 1 …


11
将Python namedtuple序列化为json
建议namedtuple使用保留的字段名称将a序列化为json的建议方式是什么? 将anamedtuple序列化为json只会导致值序列化,并且字段名称在转换中丢失。我希望在对json大小化时也保留字段,因此请执行以下操作: class foobar(namedtuple('f', 'foo, bar')): __slots__ = () def __iter__(self): yield self._asdict() 上面的代码按照我的预期序列化为json,并且namedtuple在我使用的其他地方(属性访问等)中起作用,除了在迭代过程中出现非元组之类的结果外(对于我的用例而言这很好)。 在保留字段名称的情况下转换为json的“正确方法”是什么?

6
使用Python请求模块下载并保存PDF文件
我正在尝试从网站下载PDF文件并将其保存到磁盘。我的尝试由于编码错误而失败,或者导致PDF空白。 In [1]: import requests In [2]: url = 'http://www.hrecos.org//images/Data/forweb/HRTVBSH.Metadata.pdf' In [3]: response = requests.get(url) In [4]: with open('/tmp/metadata.pdf', 'wb') as f: ...: f.write(response.text) --------------------------------------------------------------------------- UnicodeEncodeError Traceback (most recent call last) <ipython-input-4-4be915a4f032> in <module>() 1 with open('/tmp/metadata.pdf', 'wb') as f: ----> 2 f.write(response.text) 3 UnicodeEncodeError: 'ascii' codec can't encode characters …

4
如何在systemd服务单元中启用virtualenv?
我想“激活” systemd服务文件中的virtualenv。 我想避免在systemd进程和python解释器之间有一个shell进程。 我当前的解决方案如下所示: [Unit] Description=fooservice After=syslog.target network.target [Service] Type=simple User=fooservice WorkingDirectory={{ venv_home }} ExecStart={{ venv_home }}/fooservice --serve-in-foreground Restart=on-abort EnvironmentFile=/etc/sysconfig/fooservice.env [Install] WantedBy=multi-user.target /etc/sysconfig/fooservice.env PATH={{ venv_home }}/bin:/usr/local/bin:/usr/bin:/bin PYTHONIOENCODING=utf-8 PYTHONPATH={{ venv_home }}/... VIRTUAL_ENV={{ venv_home }} 但我有麻烦。由于缺少sys.path中的某些实体,因此出现ImportErrors。

15
如何在恒定大小的块中拆分可迭代
可能重复: 如何在Python中将列表分成大小均匀的块? 令我惊讶的是,我找不到“批处理”函数,该函数会将可迭代对象作为输入并返回可迭代对象的可迭代对象。 例如: for i in batch(range(0,10), 1): print i [0] [1] ... [9] 要么: for i in batch(range(0,10), 3): print i [0,1,2] [3,4,5] [6,7,8] [9] 现在,我写了我认为很简单的生成器: def batch(iterable, n = 1): current_batch = [] for item in iterable: current_batch.append(item) if len(current_batch) == n: yield current_batch current_batch = [] …

14
从boto3检索S3存储桶中的子文件夹名称
使用boto3,我可以访问我的AWS S3存储桶: s3 = boto3.resource('s3') bucket = s3.Bucket('my-bucket-name') 现在,存储桶包含文件夹first-level,例如,文件夹本身包含几个带有时间戳的子文件夹1456753904534。我需要知道这些子文件夹的名称来执行我的另一项工作,我想知道是否可以让boto3为我检索这些子文件夹。 所以我尝试了: objs = bucket.meta.client.list_objects(Bucket='my-bucket-name') 它提供了一个字典,其键“目录”为我提供了所有第三级文件,而不是第二级时间戳目录,实际上,我得到了一个包含以下内容的列表: {u'ETag':'“ etag”',u'Key':一级/ 1456753904534 / part-00014',u'LastModified':datetime.datetime(2016,2,29,13,52,24,tzinfo = tzutc()), u'所有者':{u'DisplayName':'所有者',u'ID':'id'}, u'Size':大小,u'StorageClass':'storageclass'} 您可以看到在这种情况下part-00014已检索到特定文件,而我想单独获取目录的名称。原则上,我可以从所有路径中删除目录名称,但是在第三级检索所有内容以得到第二级是很丑陋且昂贵的! 我也尝试过这里的报道: for o in bucket.objects.filter(Delimiter='/'): print(o.key) 但是我没有得到所需级别的文件夹。 有办法解决吗?

4
如何直接从文件系统加载Jinja模板
pocoo.org上的jinja API文档指出: 配置Jinja2为应用程序加载模板的最简单方法大致如下: from jinja2 import Environment, PackageLoader env = Environment(loader=PackageLoader('yourapplication', 'templates')) 这将使用默认设置创建一个模板环境,并使用一个加载器在yourapplication python包内的templates文件夹中查找模板。 事实证明,这并不是那么简单,因为您必须制作/安装带有模板的python软件包,这引入了很多不必要的复杂性,尤其是在您无意分发代码的情况下。您可以在此处和此处参考有关该主题的SO问题,但是答案是含糊不清和不令人满意的。 显然,天真的新手想要做的就是直接从文件系统中加载模板,而不是将其作为包中的资源。 怎么做?

5
SQLAlchemy等效于SQL“ LIKE”语句
标签列具有“苹果香蕉橙”和“草莓香蕉柠檬”之类的值。我想找到等效的SQLAlchemy语句 SELECT * FROM table WHERE tags LIKE "%banana%"; 我应该怎么Class.query.filter()做才能做到这一点?

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.