session.get里的digg_url明显是None,但其实我想用的是上面if...else语句里的,如果在c++中只要把digg_url声明在if语句上面即可,但是py不可以这么做。
当然解决我这个问题可以把session.get移到if语句里,但是如果我想了下如果像session.get这样引用digg_url的语句有几十句怎么办?
所以我想问下这样的问题该怎么解决?(只能设为global么?有点无语这py)
认证0级讲师
Python中可以直接使用if-else中定义的变量
例如
# 前面并没有使用过b if a == 1: b = 2 else: b = 1 print(b) #完全合法
你的session.get中的digg_url不应该是None,你可以输出看一下。
session.get
digg_url
None
虽然我不太熟悉python,但是可能可以在if之前给digg_url赋一个任意值?
你可以在if上定义
digg_url = None
或者使用三元运算符
digg_url = 'a' if digg else 'b'
建议你使用get之前digg_url 和session都打印出来,我觉得是你逻辑错误吧。还有get里面的四二个参数headers是用来做什么的?
Python中可以直接使用if-else中定义的变量
例如
你的
session.get
中的digg_url
不应该是None
,你可以输出看一下。虽然我不太熟悉python,但是可能可以在if之前给digg_url赋一个任意值?
你可以在if上定义
或者使用三元运算符
建议你使用get之前digg_url 和session都打印出来,我觉得是你逻辑错误吧。还有get里面的四二个参数headers是用来做什么的?