Questions tagged «python»

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

27
如何检查列表是否为空?
这个问题的答案是社区的努力。编辑现有答案以改善此职位。它目前不接受新的答案或互动。 例如,如果通过以下内容: a = [] 如何检查是否a为空?
3234 python  list 


11
使用“ for”循环遍历字典
以下代码使我有些困惑: d = {'x': 1, 'y': 2, 'z': 3} for key in d: print key, 'corresponds to', d[key] 我不明白的是那key部分。Python如何识别它仅需要从字典中读取密钥?是keyPython中的特殊字?还是仅仅是一个变量?


19
在函数中使用全局变量
如何在函数中创建或使用全局变量? 如果在一个函数中创建全局变量,如何在另一个函数中使用该全局变量?我是否需要将全局变量存储在需要对其进行访问的函数的局部变量中?


5
在一行中捕获多个异常(块除外)
我知道我可以做到: try: # do something that may fail except: # do this if ANYTHING goes wrong 我也可以这样做: try: # do something that may fail except IDontLikeYouException: # say please except YouAreTooShortException: # stand on a ladder 但是,如果我想在两个不同的异常中做同样的事情,那么我现在想到的最好的方法就是: try: # do something that may fail except IDontLikeYouException: # say please except …

17
如何制作功能装饰器链?
如何在Python中制作两个装饰器,以完成以下工作? @makebold @makeitalic def say(): return "Hello" ...应返回: "<b><i>Hello</i></b>" 我并不是想HTML在实际的应用程序中采用这种方式-只是想了解装饰器和装饰器链接的工作方式。


16
检查字典中是否已存在给定键
这个问题的答案是社区的努力。编辑现有答案以改善此职位。它目前不接受新的答案或互动。 我想在更新密钥值之前测试字典中是否存在密钥。我写了以下代码: if 'key1' in dict.keys(): print "blah" else: print "boo" 我认为这不是完成此任务的最佳方法。有没有更好的方法来测试字典中的键?
2683 python  dictionary 

26
如何通过引用传递变量?
Python文档似乎尚不清楚参数是通过引用还是通过值传递,并且以下代码产生不变的值“原始” class PassByReference: def __init__(self): self.variable = 'Original' self.change(self.variable) print(self.variable) def change(self, var): var = 'Changed' 我可以做些什么来通过实际引用传递变量吗?


30
“最少惊讶”和可变默认参数
长时间修改Python的任何人都被以下问题咬伤(或弄成碎片): def foo(a=[]): a.append(5) return a Python新手希望此函数始终返回仅包含一个元素的列表[5]。结果是非常不同的,并且非常令人惊讶(对于新手而言): >>> foo() [5] >>> foo() [5, 5] >>> foo() [5, 5, 5] >>> foo() [5, 5, 5, 5] >>> foo() 我的一位经理曾经第一次遇到此功能,并将其称为该语言的“巨大设计缺陷”。我回答说,这种行为有一个潜在的解释,如果您不了解内部原理,那确实是非常令人困惑和意外的。但是,我无法(对自己)回答以下问题:在函数定义而不是函数执行时绑定默认参数的原因是什么?我怀疑经验丰富的行为是否具有实际用途(谁真正在C中使用了静态变量,却没有滋生bug?) 编辑: 巴泽克举了一个有趣的例子。连同您的大多数评论,特别是Utaal的评论,我进一步阐述了: >>> def a(): ... print("a executed") ... return [] ... >>> >>> def b(x=a()): ... x.append(5) ... print(x) ... a …



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.