Я пытаюсь объединить две функции, потому что A) я думаю, что могу и B) я думаю, что я должен.Когда я использую функции отдельно, скрипт работает нормально.Когда я объединяю их, «новая» переменная - это пустая строка, как и должно быть.Любая помощь будет оценена.Если вам нужен полный сценарий, который можно организовать.
Функция A:
def strip_domain_name(x):
global ns
l = x.find('@')
ns = x[0:l]
Функция B:
def encode_user_name(x,y):
global new
for a in x:
if a in y:
new = new + y.get(a)
Функция A + B:
def combined_above_script(x,y,z):
global ns
global new
l = x.find('@')
ns = x[0:l]
for a in y:
if a in z:
new = new + z.get(a)
Вот упрощенная версия того, что я пытаюсь сделать, с некоторыми модификациями, основанными на предложении блендера.В конце концов, если я напечатаю aa, это должно привести к '0000000'.Что не так.
aa = ''
bb = ''
encode = {'a':'0'}
def strip_and_encode(x,y,z):
aa = ''
bb = x[0:x.find('@')]
for a in y:
if a in z:
aa += z.get(a)
s='aaaaaaa@aaa'
strip_and_encode(s,bb,encode)
print(aa)