编程面试题

  • Python 3.2-readline()跳过源文件中的行

    尝试完全删除“ line = data_file.readline()”吗?我怀疑“ for data_file中的行:”也是readline操作。

  • 遍历大熊猫系列

    Series对象定义一个 iteritems 方法(数据作为索引值对的迭代器返回。 for _, val in ed1.it

  • 用真实的\ n输出替换其中带有\ n的文本

    如果在Python解释器中运行此命令,则解释器的常规行为是将换行符显示为“ \ n”,而不是实际的换行符,因为这样可以更轻松地调试输出。如果要在解释器中获取实际的换行符,则应print获取字符串。 如果这是程序输出的内容(即:您正在从外部程序获取换行符转义序列),则应使用以下命令: OUTPUT = stdout.read formatted_out

  • 具有不同偏移量矢量的熊猫矢量化日期偏移量操作

    一种真正的矢量化方法是构造numpy.timedelta64from的数组month_offset,将其添加到日期数组中,然后减去numpy.timedelta641, 'D'以返回到上个月的最后一天。 使用解决方案的applylambda速度可能会慢得多。并且如警告所述,某些熊猫的日期偏移量操作未向量化。如果您的数据

  • 如何使用pyYAML将python元组添加到YAML文件?

    在pyyaml中,SafeLoader不包含python本机类​​型的加载程序,仅包含yaml规范中定义的类型。你可以看到类型的SafeLoader和Loader这里下面的互动样本。 您可以定义一个新的Loader类,该类添加了python元组,但未添加其他类型,因此它仍然非常安全: import yaml class PrettySafeL

  • Django | 连接的路径位于基本路径组件{%static img.thumbnail.url%}之外,带有白噪声的错误400

    我想这是一个安全问题。即使“ whitenoise”可以很好地在生产环境中提供真正的静态文件,也不能提供媒体文件。 我犯了一个结构错误: # Don't place your 'media' files IN your 'static' file like this : MEDIA_ROOT = os.path.joinBASE_DIR, 'wtstaticmedia' code

  • 在将总行追加到数据框后,删除熊猫数据框索引的名称

    那是列的名称。 In [11]: df = pd.DataFrame[[1, 2]], columns=['A', 'B'] In [12]: df Out[12]: A B 0 1 2 In [13]: df.columns.name = 'XX' In [14]: df Out[14]: XX A B 0 1 2 您可以将其设置为“无”以清

  • PyMongo / Mongoengine等价于mongodump

    对于相对较小的小型数据库,我最终使用了以下解决方案。它并不真正适用于大型数据库或复杂数据库,但足以满足我的情况。它将所有文档作为json转储到备份目录。它笨拙,但是除了pymongo之外,它不依赖其他任何东西。 from os.path import join import pymongo from bson.json_utils import dumps def backup_dbbackup_db_dir

  • 将重复项保留在Python列表中

    如果列表已经排序,这是一种简短的方法: x = [1,2,2,2,3,4,5,6,6,7] from itertools import groupby print [key for key,group in groupbyx if lenlistgroup 1]

  • 点安装--target =。Alfred-Workflow出现错误

    这个问题的答案是(我在搜寻错误消息的最后一行时找到了它)。 首先,我还收到了与您相同的错误消息,但执行此操作后: $ echo

  • 在Heroku上导入matplotlib失败

    我联系了Heroku支持并获得了以下答案: “ 默认的Heroku Python构建不包含成功导入tkinter所需的库。您可以在此处找到我们默认提供的基础库的列表: https : a href="https:devcenter.heroku.

  • 让Python的`warnings.warn()`不提及自己

    事实证明,有可能让我们warnings.warn收集所有信息,而只是汇总信息的打印方式: #!usrbinpython3 import warnings def warning_on_one_linemessage, category, filename, lineno, file=None, line=None: return '%s:%s: %s: %s\n

  • 从URL python删除HTTP和WWW

    您可以使用 regex url = 'http:www.google.comimages' url = url.replace"http:www.","" print url 或者你可以使用 regular expressions import re url = re.comp

  • 如何在带有argparse的单独命名空间中使用子解析器参数?

    我已经开始开发一种不同的方法(但与Anthon的建议相似),并且想出了一个短得多的代码。但是,我不确定我的方法是否可以解决该问题。 与Anthon提出的类似,我定义了一个新方法,该方法创建保留在中的“顶级”参数列表args,而所有其他参数作为附加字典返回: class MyArgumentParserargparse.ArgumentParser: def

  • 熊猫分组比:高于阈值的百分比

    df.groupby'day'['value'].applylambda c: c0.sumlenc day 1 0.333333 2 0.666667 3 0.333333 4 1.000000 Name: value, dtype: float64

  • Dynamodb:使用两个以上属性进行查询

    您的数据建模过程必须考虑您的数据检索要求,在DynamoDB中,您只能通过哈希或哈希+范围键查询。 如果通过主键查询不足以满足您的要求,则可以通过创建辅助索引(本地或全局)来确定备用键。 但是,在某些情况下,可以将多个属性的串联用作主键,以避免维护二级索引的成本。 如果需要按名字,姓氏和创建日期来获取用户,建议您将这些属性包括在哈希和范围键中,因此不需要创建其他索引。 哈希键

  • 模板中的Django select_related

    Car模型上的简单方法怎么样? class Carmodels.Model: ... def parts_with_manufacturersself: return self.part_set.select_related'manufacturer' 接着 {% for

  • Python-解压缩字符串格式运算符列表的简便方法?

    使用格式: str = 'The {} are {}, {}, {}, and {}'.format'numbers', *lstData 有关可能的格式(浮点数,小数点,转换等)的更多详细信息,请参阅文档。

  • 使用python从时间戳中提取小时

    我认为您需要dt.hour: print df.TIMESTAMP.dt.hour 0 0 1 0 Name: TIMESTAMP, dtype: int64 df['hours'

  • 确定软件包是否已安装Yum Python API?

    import yum yb = yum.YumBase if yb.rpmdb.searchNevraname='make': print "installed" else: print "not installed"

  • 无法在scikit-learn中导入sklearn.model_selection

    检查您的scikit学习版本; import sklearn printsklearn.__version__ sklearn.model_selection 适用于版本0.18.1。 您需要导入什么取决于您的需求。例如,在版本0.18.1中,GridSearchCV可以导入为

  • NameError:全局名称“ myExample2”未定义#模块

    这是您的代码的简单修复。 from myimport import myClass #import the class you needed def main: myClassInstance = myClass10 #Create an instance of that class myClassInstance.myExample if __name__ == "__main_

  • 在python中分割逗号分隔的字符串

    虽然不可能使用正则表达式,但是以下简单代码将实现所需的结果: def split_attext, delimiter, opens='[', closes=']', quotes='"\'': result = [] buff = "" level = 0 is_quoted = False for char in text: if

  • 使用空格分隔符和最大长度分割字符串

    import textwrap string = 'A string with words' textwrap.wrapstring,15 ['A string with', 'words']

  • 使用带有g-recaptcha-response参数的POST提交表单

    如果检查HTML,您将看到表单的操作是..cgi-binstatos_OIB.cgi,这意味着表单已提交到http:www.hzzo- net.hrcgi-binstatos_OIB.cgi,因此您必须使用该URL。 另外,经过一些测试,我发现服务器返回了500响应,除非提供了有效的Referer(http:www.hzzo

  • Django:使用values()和get_FOO_display()吗?

    通常,使用基于Manager的查询返回模型对象可能会更好,更容易。听起来您原始方法的问题不在于您要遍历查询集(如@ahmoo所说,这不是性能问题),而是在迭代循环中您正在获取其他相关对象,需要一个或多个对象每个记录的其他查询。 有几种方法可以提高仍返回模型实例的查询的性能: 听起来最相关的是a href="https:docs.djangoproject.comen1.3r

  • 如何在Python的另一个函数中找出特定函数的自变量的默认值?

    除了扎根于函数的属性之外,还可以使用inspect模块提供一个稍微友好的界面: 对于Python 3.x解释器: import inspect spec = inspect.getfullargspecmyFunction 然后spec是一个FullArgSpec具有诸如args和属性的对象

  • 范围非默认参数遵循默认值一

    我认为这个问题是基于错误的前提: 我知道它是用C语言实现的事实可能允许在Pythonland中违反行为。 它是用C语言实现的,但行为在“ Pythonland”中并不违反。文档中的签名是不正确的(实际上并不正确,它是“真实签名”的近似值-可以很容易理解)。 例如range,甚至不支持命名参数-但根据文档,

  • 使用Seaborn FacetGrid绘制时间序列

    首先,我将回答您的一般性问题。您可以传递的功能规则FacetGrid.map是: 它们必须将类似数组的输入作为位置参数,第一个参数对应于x轴,第二个参数对应于y轴(不过,不久之后,第二个条件会更多 他们还必须接受两个关键字参数:color和label。如果要使用hue变量,则应将这些

  • Python SOAP客户端,带有suds的WSDL调用给出了针对HTTP基本身份验证的未经授权的传输错误401

    suds并未将授权标头添加到请求中,因此我手动进行了设置: import base64 # code excluded for brevity base64string = base64.encodestring'%s:%s' % username, password.replace'\n', '' authenticationHeader = { "SOAPAction" : "Acti

  • 在Python中用“ \”替换双引号

    尝试这个: print l.replace'"','\\"' '\"'对Python而言并不意味着什么特别的东西,因此如果您运行,则无需\在之前添加" print l.replace'\"', '\\"',您也会得到一个反斜线。

  • 熊猫从数据框中仅选择数字或整数字段

    调用apply数据框(请注意使用双方括号df[['A']]而不是df['A'])并调用string方法isdigit,然后设置paramaxis=1以逐行应用lambda函数。这里发生的是该索引用于创建布尔掩码。 In [66]: df[df[['A']].applylambda

  • Python Multiple for循环

    import itertools for a,b,c in itertools.productcc1, cc2, cc3: print a,b,c

  • dict理解中的Python作用域

    Dict理解和生成器理解创建了自己的局部作用域。列表推导在Python 2.x中不是,但在Python 3中是。(请注意,您的第一个示例不是dict推导。它只是一个文字dict,碰巧有一个表达式作为键0的值。)

  • pydev调试器:在OS 10.8升级后无法找到python 2.7的真实位置

    我有一个非常类似的问题。事实证明,升级到Mountain Lion后,所有Python源文件都消失了。 解决方案是从Apple安装“命令行工具”。试试这个链接: a href="https:developer.apple.com

  • 如何取消python时间表

    问题1:scheduler.enter返回已安排的事件对象,因此保留一个句柄就可以cancel了: from stocktrace.util import settings from stocktrace.parse.sinaparser import getMyStock import time, os, sys, sched class Monito

  • python脚本有未处理的异常时退出代码

    Python已经满足您的要求: $ python -c "raise RuntimeError" Traceback most recent call last: File "string", line 1, in module RuntimeError $ echo $? 1 在OP中进行一些编辑后,也许您想要: p

  • 将字符串中的小写字母更改为大写

    字符串在Python中是不可变的,因此您需要创建一个新的字符串对象。一种方法: indices = set[0, 7, 12, 25] s = "i like stackoverflow and python" print"".joinc.upper if i in indices else c for i, c in enumerates 印刷

  • 带有int的Python“ and”运算符

    该文档对此进行了很好的解释: 表达式x and y首先计算x; 如果x为假,则返回其值;否则,y将求值并返回结果值。

  • Django过滤器后端

    我通过如下修改类ContactFilter解决了我的问题: import django_filters from .models import Contact class ContactFilterdjango_filters.FilterSet: class Meta: model = Contact fields = { 'first_nam