Questions tagged «python»

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



12
使用pip命令从requirements.txt升级python软件包
如何使用pip命令从requirements.txt文件升级所有python软件包? 尝试以下命令 $ pip install --upgrade -r requirements.txt 由于python软件包的后缀是版本号(Django==1.5.1),因此它们似乎没有升级。有没有比手动编辑requirements.txt文件更好的方法? 编辑 正如Andy在其答案中提到的那样,软件包已固定到特定版本,因此无法通过pip命令升级软件包。 但是,我们可以pip-tools使用以下命令来实现。 $ pip-review --auto 这将自动从requirements.txt中升级所有软件包(确保pip-tools使用pip install命令安装)。

6
保留装饰功能的签名
假设我编写了一个装饰器,它执行了非常通用的操作。例如,它可能会将所有参数转换为特定类型,执行日志记录,实现备忘录等。 这是一个例子: def args_as_ints(f): def g(*args, **kwargs): args = [int(x) for x in args] kwargs = dict((k, int(v)) for k, v in kwargs.items()) return f(*args, **kwargs) return g @args_as_ints def funny_function(x, y, z=3): """Computes x*y + 2*z""" return x*y + 2*z >>> funny_function("3", 4.0, z="5") 22 到目前为止一切都很好。但是,有一个问题。装饰的函数不保留原始函数的文档: >>> help(funny_function) Help …
111 python  decorator 

5
如何退出pdb并允许程序继续?
我正在使用pdb模块调试程序。我想了解如何退出pdb并允许程序继续进行到完成。该程序的运行在计算上很昂贵,所以我不想在脚本未尝试完成的情况下退出。continue似乎不起作用。如何退出pdb并继续执行我的程序?
111 python  pdb 

13
如何将Django QueryDict更改为Python Dict?
假设我有以下QueryDict: <QueryDict: {u'num': [0], u'var1': [u'value1', u'value2'], u'var2': [u'8']}> 我想要一本这样的字典,例如: {'num': [0], 'var1':['value1', 'value2'], 'var2':['8']} (我不在乎Unicode符号是否u继续存在。) 如果我queryDict.dict()按照django网站的建议进行操作,则会丢失属于的额外值var1,例如: {'num': [0], 'var1':['value2'], 'var2':['8']} 我正在考虑这样做: myDict = {} for key in queryDict.iterkeys(): myDict[key] = queryDict.getlist(key) 有没有更好的办法?
111 python  django 


11
在Python中强制命名参数
在Python中,您可能有一个函数定义: def info(object, spacing=10, collapse=1) 可以通过以下任何一种方式调用: info(odbchelper) info(odbchelper, 12) info(odbchelper, collapse=0) info(spacing=15, object=odbchelper) 多亏了Python允许任意顺序的参数(只要它们被命名)。 我们遇到的问题是,随着一些更大的函数的增长,人们可能会在spacing和之间添加参数collapse,这意味着错误的值可能会传递给未命名的参数。此外,有时不清楚需要输入什么。我们正在寻找一种方法来强迫人们命名某些参数-不仅是编码标准,还是理想的标志或pydev插件? 因此,在上述4个示例中,由于所有参数均已命名,因此只有最后一个示例可以通过检查。 奇怪的是,我们只会为某些功能打开它,但是有关如何实现此功能的任何建议-甚至可能的话,我们将不胜感激。


8
使用Python将JSON数据漂亮地打印到文件中
用于类的项目涉及解析Twitter JSON数据。我正在获取数据并将其设置为文件没有太大的麻烦,但是它们全部集中在一行中。这对我要进行的数据操作很好,但是文件很难读取,而且我无法很好地对其进行检查,这使得为数据操作编写代码非常困难。 有谁知道如何在Python中执行此操作(即不使用命令行工具,但我无法使用该工具)?到目前为止,这是我的代码: header, output = client.request(twitterRequest, method="GET", body=None, headers=None, force_auth_header=True) # now write output to a file twitterDataFile = open("twitterData.json", "wb") # magic happens here to make it pretty-printed twitterDataFile.write(output) twitterDataFile.close() 请注意,我很高兴有人向我指向simplejson文档等,但是正如我已经说过的那样,我已经研究过了并继续需要帮助。一个真正有用的答复将比那里的示例更加详细和解释。谢谢 另外: 在Windows命令行中尝试此操作: more twitterData.json | python -mjson.tool > twitterData-pretty.json 结果: Invalid control character at: line 1 column …


3
是否使用-m选项执行Python代码
python解释器的-m 模块选项为“将库模块模块作为脚本运行”。 使用此python代码a.py: if __name__ == "__main__": print __package__ print __name__ 我测试python -m a了 "" <-- Empty String __main__ 而python a.py回报 None <-- None __main__ 对我来说,这两个调用似乎是相同的,只是当使用-m选项调用__package__时不为None。 有趣的是,有了python -m runpy a,我得到了与python -m a编译成a.pyc的python模块相同的东西。 这些调用之间的(实际)区别是什么?他们之间有什么利弊吗? 同样,David Beazley的Python Essential Reference将其解释为“ -m选项将库模块作为脚本运行,该脚本在执行主脚本之前在__main__模块内部执行 ”。这是什么意思?
111 python  module  package 

6
使用beautifulsoup提取属性值
我试图在网页上的特定“输入”标签中提取单个“值”属性的内容。我使用以下代码: import urllib f = urllib.urlopen("http://58.68.130.147") s = f.read() f.close() from BeautifulSoup import BeautifulStoneSoup soup = BeautifulStoneSoup(s) inputTag = soup.findAll(attrs={"name" : "stainfo"}) output = inputTag['value'] print str(output) 我收到TypeError:列表索引必须是整数,而不是str 即使从Beautifulsoup文档中我了解到字符串在这里也不应该成为问题...但是我没有专家,我可能会误解了。 任何建议,不胜感激!提前致谢。

5
如何释放熊猫数据框使用的内存?
我在熊猫中打开了一个非常大的csv文件,如下所示。 import pandas df = pandas.read_csv('large_txt_file.txt') 完成此操作后,内存使用量将增加2GB,这是预期的,因为此文件包含数百万行。我的问题出在我需要释放此内存的时候。我跑了... del df 但是,我的内存使用没有下降。这是释放熊猫数据帧使用的内存的错误方法吗?如果是,正确的方法是什么?
111 python  pandas  memory 

14
在python中列出目录树结构?
我知道我们可以os.walk()用来列出目录中的所有子目录或所有文件。但是,我想列出完整的目录树内容: - Subdirectory 1: - file11 - file12 - Sub-sub-directory 11: - file111 - file112 - Subdirectory 2: - file21 - sub-sub-directory 21 - sub-sub-directory 22 - sub-sub-sub-directory 221 - file 2211 如何在Python中最好地实现这一目标?

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.