Questions tagged «python»

Python是一种动态类型化的高级解释型编程语言。它的设计侧重于清晰的语法,一种面向对象编程的直观方法,以及使正确的做事方式变得显而易见的方法。Python支持模块和异常,并具有广泛的标准模块库。Python是通用的,因此从Web到嵌入式系统都得到了广泛的使用。

7
学习用C编程(来自Python)
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 6年前关闭。 如果这是问这个问题的错误地方,请告诉我。 我是一个职业的Python程序员。我很想学习C。确实,我已经尝试了很多次,但是我总是灰心。在Python中,您编写了几行,程序就产生了奇迹。在C语言中,我似乎无法做任何有用的事情。 甚至连接到Internet似乎都非常复杂。 您对我学习C有什么建议?有没有好的网站?有什么很棒的项目吗? 谢谢
22 learning  python  c 

11
如果我们可以使用Python进行函数式编程,是否需要特定的函数式编程语言?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 使用生成器和lambda,我们可以使用Python进行函数式编程。您也可以使用Ruby实现相同的功能。 所以问题是:为什么我们需要特定的功能编程语言,例如Erlang,Haskell和Scheme?这些特定的功能编程语言提供了什么不同?为什么我们不能只使用Python进行函数式编程?

3
为什么这么多语言将以0开头的数字视为八进制?
我读过八进制在哪里有用?八进制似乎曾经是有用的。 许多语言将以0开头的数字视为八进制,因此文字010实际上是8。其中一些是JavaScript,Python(2.7)和Ruby。 但是我真的不明白为什么这些语言需要八进制,尤其是当这种符号更可能的用法是表示带有多余0的十进制数字时。 JavaScript是一种客户端语言,八进制似乎毫无用处。从其他意义上讲,这三个都相当现代,我认为不会有太多使用八进制表示法的代码通过删除此“功能”而被破坏。 因此,我的问题是: 这些语言是否支持八进制文字? 如果八进制文字是必需的,为什么不使用类似0o10?为什么要复制覆盖更有用用例的旧符号?

4
拆分大型模块是否有负面影响?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 我正在浏览一个github项目,发现此模块有1万多行。 在一个模块中包含这么多的代码是一种惯例吗? 在我看来,这应该分为多个模块。也许每个数据库引擎一个。 开发人员从制作这样一个巨大的模块(而不是“将其全部放在一个地方”)获得什么好处,或者将其拆分(而不是“复杂性”)有什么坏处?

7
对于哪些类型的应用程序,Python是一个错误的选择?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 3年前关闭。 我刚开始学习Python,并且想了解更多有关该语言的知识。 我意识到,在许多情况下,相对于C或C ++,Python是一种慢速语言。因此,对于可能需要尽快运行的应用程序,Python可能不是最佳选择。 除此之外,Python似乎是一种很棒的通用语言,易于阅读和编写。可用的库为它提供了大量功能。在对性能有严格要求的应用程序之外,使用Python在哪里是一个不好的选择(为什么)?
21 python 

9
学习算法成为一名真正的程序员是否必不可少?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 我是一名PHP程序员,直到现在我还不需要学习算法。 现在,我开始学习Python(一种真正的编程语言),因为我需要使用matplotlib。从阅读Python算法书籍开始然后学习matplotlib和numpy是否有意义,还是我应该跳到matplotlib和numpy? 最好的祝福,

3
@staticmethod与模块级功能
这不是关于@staticmethod和@classmethod!我知道如何staticmethod工作。我想知道的是@staticmethod模块级功能的正确用例。 我已经用谷歌搜索了这个问题,似乎已经达成了一些普遍的共识,即模块级函数比静态方法更受青睐,因为它更具Python风格。静态方法具有绑定到其类的优势,如果仅该类使用它,这可能是有道理的。但是,在Python中,功能通常是按模块而非类来组织的,因此通常使它成为模块功能也是有意义的。 静态方法也可以被子类覆盖,这是一个优点或缺点,这取决于您如何看待它。尽管静态方法通常是“功能纯净的”,所以重写它可能并不明智,但有时可能很方便(尽管这可能是“便捷但绝不做”的事情之一,只有经验才能教您。) 是否有使用静态方法或模块级功能的一般经验法则?它们有哪些具体的优点或缺点(例如,将来的扩展,外部扩展,可读性)?如果可能,还提供一个案例。
21 python 

3
如何正确地将UI与Pyqt / Qt应用上的逻辑分离?
过去,我已经阅读了很多有关该主题的文章,并观看了Bob叔叔的有趣的演讲。但是,我始终很难正确地构建桌面应用程序,并区分在UI端和逻辑端应该承担哪些责任。 良好做法的简短摘要就是这样的。您应该设计与UI分离的逻辑,以便无论哪种后端/ UI框架,都可以(理论上)使用库。基本上,这意味着UI应该尽可能地虚设,繁重的处理应该在逻辑端进行。否则,我可以在控制台应用程序,Web应用程序或桌面应用程序上真正使用我的漂亮库。 此外,鲍伯叔叔建议对使用哪种技术会给您带来很多好处(良好的界面)的不同讨论,这种递延概念使您可以将经过良好测试的实体高度去耦,这听起来不错,但仍然很棘手。 因此,我知道这个问题是一个相当广泛的问题,已经在整个互联网上讨论了很多次,还以大量好书进行了讨论。因此,为了从中获得好处,我将发布一个非常小的虚拟示例,尝试在pyqt上使用MCV: import sys import os import random from PyQt5 import QtWidgets from PyQt5 import QtGui from PyQt5 import QtCore random.seed(1) class Model(QtCore.QObject): item_added = QtCore.pyqtSignal(int) item_removed = QtCore.pyqtSignal(int) def __init__(self): super().__init__() self.items = {} def add_item(self): guid = random.randint(0, 10000) new_item = { "pos": [random.randint(50, 100), …
20 design  python  mvc  gui  coupling 

4
什么时候以及如何使用例外?
那个设定 我经常很难确定何时以及如何使用异常。让我们考虑一个简单的示例:假设我正在抓取一个网页,说“ http://www.abevigoda.com/ ”,以确定Abe Vigoda是否还活着。为此,我们要做的就是下载页面并寻找出现“ Abe Vigoda”短语的时间。我们返回首次亮相,因为其中包括安倍晋三的身份。从概念上讲,它将如下所示: def get_abe_status(url): # download the page page = download_page(url) # get all mentions of Abe Vigoda hits = page.find_all_mentions("Abe Vigoda") # parse the first hit for his status status = parse_abe_status(hits[0]) # he's either alive or dead return status == "alive" where parse_abe_status(s)以“ …

3
如何在数据中表达微妙的关系?
“ A”与“ B”和“ C”有关。在这种情况下,我如何证明“ B”和“ C”也可能相关? 例: 以下是有关百老汇最近一部戏剧的一些头条新闻: 大卫·马梅特(David Mamet)的格伦加里(Glengarry)格伦·罗斯(Glen Ross),由阿尔·帕西诺(Al Pacino)主演,在百老汇开幕 Al Pacino在“ Glengarry Glen Ross”中:评论家们怎么看? 阿尔·帕西诺(Al Pacino)在百老汇(Broadway turn)赢得了平淡的评论 剧院评论:Glengarry Glen Ross正在努力推销明星 Glengarry Glen Ross;嘿,谁杀死了Klieg灯? 问题: 对这些记录进行模糊字符串匹配将建立一些关系,但不会建立其他关系,即使人类读者可以从更大的数据集中从上下文中选择它们。 我如何找到暗示#3与#4相关的关系?它们都可以很容易地连接到#1,但不能互相连接。 这种数据或结构是否有(可查询的)名称?我在寻找哪种算法? 目标: 给定1,000个标题,系统会自动提示这5个项目可能都是同一件事。 老实说,我编写程序已经很久了,我不知如何正确表达这个问题。(如果有道理,我不知道不知道)。 这是一个个人项目,我正在用Python编写它。在此先感谢您的任何帮助,建议和指示!

6
评论写作和文档的最佳实践
此问题是从Stack Overflow 迁移而来的,因为可以在Software Engineering Stack Exchange上回答。 迁移 7年前。 如今评论比以往任何时候都容易。在Java中,有一些将注释链接到类的很好的技术,而Java IDE擅长为您创建注释外壳。像Clojure这样的语言甚至都允许您在函数代码本身中添加对函数的描述作为参数。 但是,我们仍然生活在一个时代,好开发者经常发表过时或较差的评论-我对提高评论的鲁棒性和实用性很感兴趣。 特别是在这里,我对Java / Clojure / Python感兴趣,但是答案不需要特定于语言。 是否有任何新兴技术可以验证注释并自动检测“模糊”注释(例如,带有魔术数字的注释,不完整的句子等)或不正确的注释(例如,检测拼写错误的变量等)。 更重要的是:那里是否存在公认的“评论政策”或策略?那里有很多关于如何编码的建议-但是“如何发表评论”呢?

5
有没有一种用于开发Python GUI应用程序的标准框架?
有很多使用Python编写GUI应用程序的框架。但是,有没有一个关键的标准框架?例如,我们在Visual Studio上有一捆.NET / C#。 我也在其他角度思考。将来,如果我接受Python程序员工作的面试,将考虑使用哪个GUI框架? 我也想知道,没有集成GUI和Python语言的IDE。口味选择不错,但选择过多会分散注意力。
20 python 

7
Python可变的默认参数:为什么?
我知道默认参数是在函数初始化时创建的,而不是在每次调用函数时创建的。请参见以下代码: def ook (item, lst=[]): lst.append(item) print 'ook', lst def eek (item, lst=None): if lst is None: lst = [] lst.append(item) print 'eek', lst max = 3 for x in xrange(max): ook(x) for x in xrange(max): eek(x) 我不明白的是为什么要这样实施。与每次调用时的初始化相比,此行为提供什么好处?
20 python 

4
为什么协程又回来了?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 2年前关闭。 协程的大部分基础工作都发生在60年代/​​ 70年代,然后停下来,取而代之的是其他选择(例如线程) 对以Python和其他语言出现的协程产生新兴趣的实质是什么?

4
python块中的冒号在技术上是必要的吗?
这实际上只是想要了解更多信息的python新手的理论问题。 在python中的块初始语句之后,我一直忘了冒号。这些就是我的意思: for <variable> in <sequence>: if <blah blah>: 我的想法是,我一直忘记的一个原因是它们实际上是隐式的:不管是否冒号,该语句都以该行结尾。 我的问题-为了学习python语法如何工作而问-是冒号是否真的不必要?我是否要更改python语法,以便不再需要冒号,是否会中断?这会使某些陈述模棱两可或不可能吗?
19 python  syntax  theory 

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.