草庐IT

allow_none

全部标签

python - 按日期对 Python 对象列表进行排序(当有些为 None 时)

这是对我之前的question的轻微更新我有一个名为results的Python列表。结果列表中的大多数结果对象都有一个人物对象,而大多数人物对象都有一个生日属性(result.person.birthdate)。生日是一个日期时间对象。我想按生日从大到大排序结果列表。但是,如果没有人对象或人对象没有生日,我仍然希望结果包含在结果列表中。在列表的末尾是理想的。执行此操作的最Pythonic方法是什么? 最佳答案 importdatetimeresults.sort(key=lambdar:r.person.birthdateif(r

python - 如何处理 Django 查询中的 "None"DB 值

我有以下执行SQLOR语句的过滤器查询:results=Stores.objects.filter(Q(title__icontains=prefs.address1)|Q(title__icontains=prefs.address2))这工作正常,但如果prefs.address1和prefs.address2值(来自另一个模型)在mySQL中为空,Django会报错并出现以下错误:CannotuseNoneasaqueryvalue在构造OR过滤器查询之前,是否有一种优雅的方法来检查我的过滤器值是否不为空?非常感谢。 最佳答案

python - json 如何将 None 转储为空字符串

我希望Python的None在json中编码为空字符串,如何实现?以下是json.dumps的默认行为。>>>importjson>>>json.dumps(['foo',{'bar':('baz',None,1.0,2)}])'["foo",{"bar":["baz",null,1.0,2]}]'我应该覆盖json编码器方法还是有其他方法?输入数据并不像上面的例子那么简单,在每次请求时它都可以更改为不同的数据结构。很难编写用于更改数据结构的函数。 最佳答案 在您正在编码的对象中,使用空字符串而不是None。这是一个未经测试的函数,

python - TypeError : __init__() should return None, 不是 'int'

我正在处理这个tutorial.我正在迭代地解决这个问题。此时我有以下二进制类:classBinary:def__init__(self,value):self.value=str(value)ifself.value[:2]=='0b':print('abinary!')self.value=int(self.value,base=2)elifself.value[:2]=='0x':print('ahex!')self.value=int(self.value,base=16)else:print(self.value)returnint(self.value)我正在使用pytes

python - 如何从 DF 中获取在 pyspark (spark) 中包含值 None 的行

在下面的示例中,df.a==1谓词返回正确的结果,但是df.a==None在应该返回1时返回0。l=[[1],[1],[2],[2],[None]]df=sc.parallelize(l).toDF(['a'])df#DataFrame[a:bigint]df.collect()#[Row(a=1),Row(a=1),Row(a=2),Row(a=2),Row(a=None)]df.where(df.a==1).count()#2Ldf.where(df.a==None).count()#0L使用星火1.3.1 最佳答案 您可以使用

python - 使用 Python 在 JSON 数据中使用 Null 而不是 Nones

我正在处理以下数据:[{"title":null,"metric1":361429,"metric2":36,},{"title":null,"metric1":253798,"metric2":48}]当我尝试将此数据分配给Python中的变量(目的是解析它)时,我收到以下错误消息:Traceback(mostrecentcalllast):File"",line1,inNameError:name'null'isnotdefined根据我的研究,None似乎是Python的null。我想知道的是,是否可以使用Python将数据中的null更改为None?我试过从数据中创建一个字符串

python - Python 的 "None"的 Matlab 等价物

Matlab中是否有一个关键字大致相当于python中的None?我正在尝试使用它来标记函数的可选参数。我正在翻译以下Python代码deff(x,y=None):ify==None:returng(x)else:returnh(x,y)进入Matlabfunctionrtrn=f(x,y)ify==[]:rtrn=g(x);elsertrn=h(x,y);end;end如您所见,我目前正在使用[]作为None。有更好的方法吗? 最佳答案 在您的具体情况下。您可以使用nargin来确定调用函数时此处提供了多少个输入参数。来自MATL

Python lambda 返回 None 而不是空字符串

我有以下lambda函数:f=lambdax:x==Noneand''orx如果它接收None作为参数,它应该返回一个空字符串,如果它不是None,它应该返回一个空字符串。例如:>>>f(4)4>>>f(None)>>>如果我调用f(None)而不是得到一个空字符串,我得到的是None。我打印了函数返回的类型,得到了NoneType。我期待的是字符串。type('')返回字符串,所以我想知道为什么当我将None作为参数传递时lambda不返回空字符串。我对lambda还很陌生,所以我可能误解了它们的工作原理。 最佳答案 使用ifel

python - Fortran 的 "implicit none"在 Python 中是否有等效项?

在Fortran中有一个语句Implicitnone当一个局部变量没有被声明但是被使用时会抛出一个编译错误。我知道Python是一种动态类型的语言,变量的范围可以在运行时确定。但我想避免在忘记初始化局部变量但在主代码中使用它时发生的某些意外错误。例如,以下代码中的变量x是全局变量,尽管我并没有这样打算:deftest():y=x+2#intendedthisxtobealocalvariablebutforgot#xwasnotinitializedprintyx=3test()所以我的问题是:是否有任何方法可以确保test()中使用的所有变量都是本地变量并且没有副作用。我正在使用Py

python - 为什么人们在 __get__ 中将 owner 参数默认为 None?

我经常看到这个:def__get__(self,instance,owner=None):为什么有些人对owner参数使用默认值None?这甚至在Pythondocs中完成:descr.__get__(self,obj,type=None)-->value 最佳答案 因为所有者可以很容易地从实例中派生出来,所以第二个参数是可选的。只有当没有从中派生所有者的实例时,才需要所有者参数。这在引入描述符的提案中有描述,PEP252-MakingTypesLookMoreLikeClasses:__get__:afunctioncallabl