草庐IT

allow_none

全部标签

将字符串 "None"转换为适当的 None 的 Pythonic 方法

我可以创建一个if语句,打赌可能会有更好的方法。 最佳答案 你可以使用ast.literal_eval:In[6]:importastIn[7]:ast.literal_eval('None')isNoneOut[7]:True但是,if语句或ternaryexpression如果您只需要将'None'转换为None会更快:x=Noneifx=='None'elsex 关于将字符串"None"转换为适当的None的Pythonic方法,我们在StackOverflow上找到一个类似的问题

python - 有时 request.session.session_key 是 None

我在从request.session获取session_key时遇到了问题。我正在使用Django1.8和Python2.7.10来设置RESTful服务。这是我的登录View的片段:user=authenticate(username=userName,password=passWord)ifuserisnotNone:#thepasswordverifiedfortheuserifuser.is_active:#app_logger.debug("Userisvalid,activeandauthenticated")ifhasattr(user,'parent'):login(r

python - 如何对列表进行排序并正确处理 None 值?

我正在尝试使用date属性对对象列表进行排序list_of_objects.sort(key=lambdax:x.date,reverse=True)但有些日期只是None,这意味着我得到了错误TypeError:can'tcomparedatetime.datetimetoNoneType有没有办法解决这个问题?例如具有date==None的对象位于已排序列表的顶部或底部——还是我需要手动执行此操作? 最佳答案 您想根据两个属性进行排序:主要是日期是否存在其次,日期(如果存在)您可以通过对元组进行排序来直接表达您的意图,其中元组的

python - python 类 __init__ 方法会隐式返回 None 吗?

我试图在类构造函数中返回一个值(init):classA:def__init__(self):return1但是有一个运行时错误说初始化应该返回无。如果是这种情况,如何理解:a=A()其中“a”被分配为类实例? 最佳答案 严格来说,不是A.__new__()正在创建实例a.当您定义classA(object):(或者classA:如果你使用的是Python3,classA:是old-styleclassthathasbeendeprecated),它是__new__从继承object.__new__()被调用以创建实例a.当a=A(

python - 使用类对象替换 sys.modules 中的当前模块时,导入的模块变为 None

一个不受欢迎但“受支持”的pythonhack(参见Guido:https://mail.python.org/pipermail/python-ideas/2012-May/014969.html)启用模块属性上的__getattr__用法涉及以下内容:importos,sysclassMyClass(object):defcheck_os(self):printossys.modules[__name__]=MyClass()在导入时,导入的模块成为类实例:>>>importmyModule>>>myModule但是,在Python-2.7中,原始模块中的所有其他导入模块都设置为N

Python:我的函数在执行我想要的操作后返回 "None"

这个问题在这里已经有了答案:Whyis"None"printedaftermyfunction'soutput?(7个答案)关闭4年前。这是我的程序defreverse(letters):backwards=""i=len(letters)-1whilei>=0:backwards=backwards+letters[i]i=i-1print(backwards)print(reverse("hello"))它工作,它打印出“olleh”,但之后,它在新行上打印“None”。我在问这是为什么。显然这个程序是为了反转一个单词,代码有效,没有函数它不会打印none,所以我不知道为什么它在函

python - 提供 `none` url 和 `live` 状态的 wagtail 页面

我在使用wagtail页面时遇到了一些问题。从外壳>>>Site.get_site_root_paths()[(1,u'/home/',u'http://localhost')]>>>BlogPage.objects.all()[0]>>>BlogPage.objects.all()[0].url>>>BlogPage.objects.all()[0].full_url>>>BlogPage.objects.all()[0].status_string'live'>>>BlogPage.objects.all()[0].url_pathu'/blog/hello-wagtail/'它工

python - 何时使用 datetime.utcnow() 或 datetime.now(tz=pytz.utc).replace(tzinfo=None)

我想知道什么时候应该使用datetime.now(tz=pytz.utc).replace(tzinfo=None)相对于简单datetime.utcnow()后者会不会考虑例如夏令时? 最佳答案 datetime.datetime的很多工作方式取决于运行它的机器。主机的本地时间和时区设置将决定您将获得的输出。如果主机处于UTC时区,则datetime.datetime.now()和datetime.datetime.utcnow()之间没有区别。根据pytzdocumentation:Thepreferredwayofdealin

python - 为什么 sys.stdout = None 有效?

我可以通过这种方式静音和恢复sys.stdout:importsyssys.stdout=Noneprint('hello')#doesnotwritetostdoutsys.stdout=sys.__stdout__print('hello')#writestostdout我知道我最好使用contextlib.redirect_stdout这可能会做类似的事情,但我的问题是:为什么上面的代码有效?我假设python会调用像sys.stdout.write()这样的东西,所以无论我用什么替换sys.stdout都应该有一个write方法(例如io.StringIO)至少。

python - 如何在 Python 中更改 None 的值?

我目前正在阅读DiveIntoPython的第5.8章,MarkPilgrim说:TherearenoconstantsinPython.Everythingcanbechangedifyoutryhardenough.ThisfitswithoneofthecoreprinciplesofPython:badbehaviorshouldbediscouragedbutnotbanned.IfyoureallywanttochangethevalueofNone,youcandoit,butdon'tcomerunningtomewhenyourcodeisimpossibletode