search

Home  >  Q&A  >  body text

Problem with python local variables

The digg_url in session.get is obviously None, but in fact, what I want to use is the above if...else statement. If in c, just declare digg_url above the if statement, but py cannot do this. Do.

Of course, to solve my problem, I can move session.get into the if statement, but if I think about it, what if there are dozens of statements like session.get that reference digg_url?

So I want to ask how to solve this problem? (Can it only be set to global? I’m a bit speechless about this py)

PHP中文网PHP中文网2803 days ago639

reply all(4)I'll reply

  • 高洛峰

    高洛峰2017-05-18 10:55:25

    You can directly use variables defined in if-else in Python

    For example

    # 前面并没有使用过b
    if a == 1:
        b = 2
    else:
        b = 1
    print(b) #完全合法

    Yourssession.get中的digg_url不应该是None, you can export it and take a look.

    reply
    0
  • PHP中文网

    PHP中文网2017-05-18 10:55:25

    Although I'm not very familiar with python, maybe it's possible to assign an arbitrary value to digg_url before the if?

    reply
    0
  • 習慣沉默

    習慣沉默2017-05-18 10:55:25

    You can define on if

    digg_url = None

    Or use the ternary operator

    digg_url = 'a' if digg else 'b'

    reply
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-18 10:55:25

    It is recommended that you print out digg_url and session before using get. I think your logic is wrong. And what are the four and two parameter headers in get used for?

    reply
    0
  • Cancelreply