草庐IT

python - 为什么 map 像 izip_longest with fill=None 一样工作?

当map具有不同长度的输入时,None的填充值用于缺少的输入:>>>x=[[1,2,3,4],[5,6]]>>>map(lambda*x:x,*x)[(1,5),(2,6),(3,None),(4,None)]这与以下行为相同:>>>importitertools>>>list(itertools.izip_longest(*x))[(1,5),(2,6),(3,None),(4,None)]map提供此行为而不是以下行为的原因是什么?>>>map(lambda*x:x,*x)[(1,5),(2,6),(3,),(4,)]...有没有一种简单的方法可以通过zip或map的形式获得后一种

python - 在一行 if 语句 python 中正确使用 * 运算符

我想知道是否可以在一行中使用*运算符来实现以下功能:ifnode['args']!=None:return_val=funct(*node['args'])else:return_val=funct()我以为我可以说return_val=funct(*node['args']ifnode['args']!=NoneelseNone)但事实证明这和说的是一样的ifnode['args']!=None:return_val=funct(*node['args'])else:return_val=funct(*None)这对*None没有任何意义。我厌倦了将第一个选项括在括号中,但这只会抛出

python - 运行函数时导入的模块变为 None

更新:本文底部有更多调试信息,揭示了python状态中的一些非常棘手的问题。我有一个导入DjangoUser对象等内容的模块。导入工作正常,代码加载。但是,当您调用该模块中使用User对象的函数时,它会出错,提示User是NoneType。还有一些其他导入,以及一些模块级全局变量,在调用函数时它们也是None。奇怪的是,这只是我们的暂存环境(Ubuntu12.04)中的一个问题。它在本地运行良好,这可能最类似于为开发工作准备额外的python包。在生产中也很好。有没有人以前遇到过这种情况,并且知道是什么原因造成的?代码如下:importurllibimporttimeimporturl

python - 如果(foo 或 bar 或 baz)是 None :

我一直在重构一些相当笨拙的代码并遇到了以下相当奇怪的结构:#!/usr/bin/envpython2.7#...if(opts.foooropts.baroropts.baz)isNone:#(actualoptionnameschangedtoprotecttheguilty)sys.stderr.write("Someerrormessagesthatthesearerequiredarguments")...我想知道这是否有任何可想象的意义。我把它改成了这样:#!/usr/bin/envpython2.7ifNonein(opts.foo,opts.bar,opts.baz):#

python - 在 Pandas 中重命名 "None"值

这可能非常简单,但我就是找不到答案。我使用GeoPandas从形状文件导入数据。将其转换为pandasDataFrame。我有一个包含三个字母代码和None缺失数据值的对象字段。如何在pandas中将None更改为类似“vcv”的内容?我试过了sala.replace(None,"vcv")遇到这个错误2400"stringsorregularexpressions,you"2401"passeda"->2402"{0!r}".format(type(regex).__name__))2403returnself.replace(regex,value,inplace=inplace,

python - 如何处理 pandas fillna 中的 `None` 值

我有以下字典:fillna(value={'first_name':'Andrii','last_name':'Furmanets','created_at':None})当我将该字典传递给fillna时,我看到:raiseValueError('mustspecifyafillmethodorvalue')\nValueError:mustspecifyafillmethodorvalue\n"在我看来,它在None值上失败了。我使用的是pandas版本0.20.3。 最佳答案 如果您想使用python的None规范化所有空值。d

python - 展平 Pandas 数据透视表

这是我的question的跟进.除了数据透视表,是否可以将表展平为如下所示:data={'year':['2016','2016','2015','2014','2013'],'country':['uk','usa','fr','fr','uk'],'sales':[10,21,20,10,12],'rep':['john','john','claire','kyle','kyle']}pd.DataFrame(data).pivot_table(index='country',columns='year',values=['rep','sales'])repsalesyear201

python - OpenPyXL 中的列和行维度始终为 None

为什么openpyxl将每一行和每一列维度读取为无?无论表格是通过openpyxl还是在MicrosoftExcel中创建的,情况都是如此。importopenpyxlwb=openpyxl.load_workbook(r'C:\data\MyTable.xlsx')ws=wb.activeprintws.row_dimensions[1].heightprintws.column_dimensions['A'].width打印None和None。这些不是隐藏的列/行。在Excel中查看时,它们显然具有尺寸。我知道用迭代器加载工作簿会阻止创建维度字典,但这会导致键错误,我在这里不使用迭

python - None 的 numpy 索引切片

处理sliding-windownumpy的例子。试图理解start_idx=np.arange(B[0])[:,None]的,Nonefoo=np.arange(10)printfooprintfoo[:]printfoo[:,]printfoo[:,None]None的作用似乎是转置数组。[0123456789][0123456789][0123456789][[0][1][2][3][4][5][6][7][8][9]]但我不是很确定。我找不到解释第二个参数(None)作用的文档。这也是一个很难用谷歌搜索的片段。numpyarraydocsmakesmethinkithassom

python - 将 'None' 作为函数参数传递(其中参数是函数)

我正在编写一个小应用程序,它必须在进入执行之前执行一些“健全性检查”。(例如,完整性检查:测试某个路径是否可读/可写/存在)代码:importloggingimportosimportshutilimportsysfrompathsimportPATHlogging.basicConfig(level=logging.DEBUG)log=logging.getLogger('sf.core.sanity')defsanity_access(path,mode):ret=os.access(path,mode)logfunc=log.debugifretelselog.warninglo