这是我的剧本
import random
import string
alphabet = "abcdefghijklmnopqrstuvwxyz"
#How many letters
def let_count():
letters_count = -1
while letters_count > 26 or letters_count < 0:
letters_count = int(input("How many letters?(max 26): "))
letters_count = 26 - letters_count
make_letter_list(letters_count)
#Make list
def make_letter_list(letters_count):
letters = list(map(chr, range(97, 123-letters_count)))
print("\n"+", ".join(letters))
main(letters)
#Make lists of elements in letters
def mloeil(i, vvv, three_nums):
if vvv:
av = True
bv = True
cv = True
dv = True
ev = True
fv = True
gv = True
hv = True
iv = True
jv = True
vvv = False
if i == "a":
if av:
a = []
av = False
return a.append(three_nums)
elif i == "b":
if bv:
b = []
bv = False
return b.append(three_nums)
elif i == "c":
if cv:
c = []
cv = False
return c.append(three_nums)
elif i == "d":
if dv:
d = []
dv = False
return d.append(three_nums)
elif i == "e":
if ev:
e = []
ev = False
return e.append(three_nums)
def main(letters):
vvv = True
for i in letters:
print("\n"+i+")")
num_count = 1
for y in range(3):
three_nums = int(input("Number"+str(num_count)+":"))
mloeil(i, vvv, three_nums)
num_count += 1
print(a)
let_count()
在“print(a)”的末尾,它只是说和错误:
NameError: name 'a' is not defined
为什么呢?我在这里定义了“a”:
if i == "a":
if av:
a = []
av = False
return a.append(three_nums)
有什么建议吗?我知道这有点乱,但我还在学习,我尝试了很多东西,但都没有成功。问题是“def mloeil”和“def main”。我试着从“mloeil”回来,只是回了信,但也没用。谢谢你的支持
a
是在函数mloeil
内定义的,因此只存在于该函数内;尝试在函数外部访问a
将导致错误如果希望
a
的值在函数外部可用,则mloeil
需要return
该值,然后需要使用该值或将其存储在某处相关问题 更多 >
编程相关推荐