Questions tagged «python»

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

11
pip和conda有什么区别?
我知道pip是python软件包的软件包管理器。但是,我看到IPython网站conda上的安装用于安装IPython。 我可以pip用来安装IPython吗?conda我已经拥有了为什么还要用作另一个python软件包管理器pip? pip和之间有什么区别conda?

19
Python中的单引号与双引号[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 根据文档,它们几乎可以互换。是否有出于某种风格的原因要在一个之上使用另一个?


10
相对进口量为十亿次
我来过这里: http://www.python.org/dev/peps/pep-0328/ http://docs.python.org/2/tutorial/modules.html#packages Python软件包:相对导入 python相对导入示例代码不起作用 相对python导入的最终答案 Python中的相对导入 Python:禁用相对导入 以及很多我没有复制的URL,有些在SO上,有些在其他网站上,当我以为我很快就会找到解决方案时。 永远存在的问题是:在Windows 7、32位Python 2.7.3中,如何解决此“尝试以非软件包方式进行相对导入”消息?我在pep-0328上构建了该软件包的精确副本: package/ __init__.py subpackage1/ __init__.py moduleX.py moduleY.py subpackage2/ __init__.py moduleZ.py moduleA.py 导入是从控制台完成的。 我确实在相应的模块中创建了名为垃圾邮件和鸡蛋的函数。自然,它不起作用。答案显然是在我列出的第4个网址中,但对我来说都是校友。我访问的其中一个URL上有此响应: 相对导入使用模块的名称属性来确定该模块在包层次结构中的位置。如果模块的名称不包含任何包信息(例如,将其设置为“ main”),则相对导入的解析就好像该模块是顶级模块一样,无论该模块实际位于文件系统上的哪个位置。 上面的回答看起来很有希望,但对我来说,全都是象形文字。所以我的问题是,如何使Python不返回“未包装的相对导入尝试”?可能有一个涉及-m的答案。 有人可以告诉我为什么Python会给出该错误消息,“非包装”的含义,为什么以及如何定义“包装”以及准确的答案,这些措辞足以使幼儿园的学生理解。

7
将pandas DataFrame写入CSV文件
我在熊猫中有一个数据框,我想将其写入CSV文件。我正在使用以下方法: df.to_csv('out.csv') 并得到错误: UnicodeEncodeError: 'ascii' codec can't encode character u'\u03b1' in position 20: ordinal not in range(128) 有什么方法可以轻松解决此问题(即我的数据框中有Unicode字符)吗?是否有一种方法可以使用例如“ to-tab”方法(我认为不存在)写入制表符分隔的文件而不是CSV?
713 python  csv  pandas  dataframe 

10
Python 3中的相对导入
我想从同一目录中的另一个文件导入函数。 有时它对我有用,from .mymodule import myfunction但有时我得到: SystemError: Parent module '' not loaded, cannot perform relative import 有时它可与一起使用from mymodule import myfunction,但有时我也会得到: SystemError: Parent module '' not loaded, cannot perform relative import 我不了解这里的逻辑,也找不到任何解释。这看起来完全是随机的。 有人可以向我解释所有这些背后的逻辑是什么?

14
查找pip安装了哪个版本的软件包
使用pip,可以确定当前安装了哪个版本的软件包? 我知道,pip install XYZ --upgrade但是我想知道是否有类似的东西pip info XYZ。如果不是,最好的方法就是告诉我当前使用的版本。
708 python  pip 

5
为什么[]比list()快?
我最近比较了[]和的处理速度,并list()惊讶地发现它的[]运行速度是的三倍以上list()。我跑了相同的测试与{}和dict(),结果几乎相同:[]和{}两个花了大约0.128sec /百万次,而list()并dict()把每个粗0.428sec /万次。 为什么是这样?不要[]和{}(可能()和'',太)立即传回了一些空的股票面值的副本,而其明确命名同行(list(),dict(),tuple(),str())完全去创建一个对象,他们是否真的有元素? 我不知道这两种方法有何不同,但我很想找出答案。我在文档中或SO上都找不到答案,而寻找空括号却比我预期的要麻烦得多。 通过分别调用timeit.timeit("[]")和timeit.timeit("list()"),和timeit.timeit("{}")和timeit.timeit("dict()")来比较列表和字典,以获得计时结果。我正在运行Python 2.7.9。 我最近发现“ 为什么True慢于if? ”比较了if Trueto 的性能,if 1并且似乎触及了类似的文字对全局场景;也许也值得考虑。


13
如何删除使用Python的easy_install安装的软件包?
Python easy_install使安装新软件包非常方便。但是,据我所知,它没有实现依赖项管理器的其他常见功能-列出和删除已安装的软件包。 找出已安装的软件包的最佳方法是什么,以及删除已安装软件包的首选方法是什么?如果我手动(例如,通过rm /usr/local/lib/python2.6/dist-packages/my_installed_pkg.egg类似方式)删除软件包,是否需要更新任何文件?

10
Python2中的dict.items()和dict.iteritems()有什么区别?
dict.items()和之间有适用的区别dict.iteritems()吗? 从Python文档: dict.items():返回字典的(键,值)对列表的副本。 dict.iteritems():在字典的(键,值)对上返回迭代器。 如果我运行下面的代码,每个似乎都返回对同一对象的引用。我缺少任何细微的差异吗? #!/usr/bin/python d={1:'one',2:'two',3:'three'} print 'd.items():' for k,v in d.items(): if d[k] is v: print '\tthey are the same object' else: print '\tthey are different' print 'd.iteritems():' for k,v in d.iteritems(): if d[k] is v: print '\tthey are the same object' else: print '\tthey are different' 输出: …


21
使用典型的测试目录结构运行unittest
即使是一个简单的Python模块,最常见的目录结构似乎也是将单元测试分成各自的test目录: new_project/ antigravity/ antigravity.py test/ test_antigravity.py setup.py etc. 例如,请参见此Python项目howto。 我的问题是,实际上运行测试的通常方法是什么?我怀疑这对除我以外的所有人来说都是显而易见的,但是您不能仅从python test_antigravity.pytest目录运行,import antigravity因为模块不在路径上,它将失败。 我知道我可以修改PYTHONPATH和其他与搜索路径有关的技巧,但我不敢相信这是最简单的方法-如果您是开发人员,这很好,但如果用户只是想检查测试结果,就不能期望用户使用通过。 另一种选择是将测试文件复制到另一个目录中,但似乎有点愚蠢,并且错过了将它们放在一个单独目录中的意义。 那么,如果您刚刚将源代码下载到我的新项目中,将如何运行单元测试?我希望有一个答案让我对用户说:“要运行单元测试,请执行X。”



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.