Переменная Python «сброс»

Я устанавливаю строку для чего-то в функции, затем пытаюсь напечатать ее в другой, чтобы обнаружить, что строка никогда не менялась Я что-то не так делаю?

Определение переменной в верхней части моего скрипта

CHARNAME = "Unnamed"

Функция установки переменной

def setName(name):
        CHARNAME = name
        print CHARNAME

Использование функции

print CHARNAME
setName("1234")
print CHARNAME

Выход

Unnamed
1234
Unnamed
10 голосов | спросил Zooty 10 72013vEurope/Moscow11bEurope/MoscowSun, 10 Nov 2013 03:15:41 +0400 2013, 03:15:41

1 ответ


0

Вам нужно

def setName(name):
    global CHARNAME
    CHARNAME = name
    print CHARNAME

http: //effbot.org/pyfaq/how-do-you-set-a-global-variable-in-a-function.htm

ответил Paul Draper 10 72013vEurope/Moscow11bEurope/MoscowSun, 10 Nov 2013 03:18:52 +0400 2013, 03:18:52

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132