我的 for 循环打印顺序错误
My for loop is printing in the wrong order
长话短说,我正在制作一个 ASCII Art 生成器,但我的循环有问题。它以错误的顺序打印正确的字母。我的输入循环内部有另一个循环,它应该根据用户输入的每个字母打印图稿的第一行,但如果有意义的话不会将它们一起打印...
我之前尝试过下面的循环,并重新排列了循环中的语句,老实说,我只是需要一双新鲜的眼睛。
预先对任何语法、错误的语法 talk/not 有意义和缺少信息深表歉意。这是我第一次使用 overflow,我已经很久没有碰过我的 IDE 了。非常感谢任何帮助!
boss = input("Text here: ")
for z in range(len(boss)):
for i in range(6):
if boss[z] == 'a':
print(ASCII["a" + str(i)], end='')
if boss[z] == 'b':
print(ASCII["b" + str(i)], end='')
print('')
z += 1
这是字典
ASCII = {
"a0" : " █████╗ ",
"a1" : "██╔══██╗",
"a2" : "███████║",
"a3" : "██╔══██║",
"a4" : "██║ ██║",
"a5" : "╚═╝ ╚═╝",
"b0" : "██████╗ ",
"b1" : "██╔══██╗",
"b2" : "██████╔╝",
"b3" : "██╔══██╗",
"b4" : "██████╔╝",
"b5" : "╚═════╝ "
}
输入:
Text here: ab
这是期望的输出:
█████╗ ██████╗
██╔══██╗██╔══██╗
███████║██████╔╝
██╔══██║██╔══██╗
██║ ██║██████╔╝
╚═╝ ╚═╝╚═════╝
这就是我要回来的:
█████╗
██╔══██╗
███████║
██╔══██║
██║ ██║
╚═╝ ╚═╝
██████╗
██╔══██╗
██████╔╝
██╔══██╗
██████╔╝
╚═════╝
仅供参考,非常重要的是它打印成这样:
a0 + b0
打印('')
a1 + b1
打印('')
a2 + b2
█████╗ ██████╗
then
█████╗ ██████╗
██╔══██╗██╔══██╗
then
█████╗ ██████╗
██╔══██╗██╔══██╗
███████║██████╔╝
etc.
外循环应该遍历图像的线条,而内循环遍历输入字符串中的字母:
ASCII = {
"a0" : " █████╗ ",
"a1" : "██╔══██╗",
"a2" : "███████║",
"a3" : "██╔══██║",
"a4" : "██║ ██║",
"a5" : "╚═╝ ╚═╝",
"b0" : "██████╗ ",
"b1" : "██╔══██╗",
"b2" : "██████╔╝",
"b3" : "██╔══██╗",
"b4" : "██████╔╝",
"b5" : "╚═════╝ "
}
boss = "abba"
for i in range(6):
for x in boss:
print(ASCII[x + str(i)], end='')
print('')
这会打印:
长话短说,我正在制作一个 ASCII Art 生成器,但我的循环有问题。它以错误的顺序打印正确的字母。我的输入循环内部有另一个循环,它应该根据用户输入的每个字母打印图稿的第一行,但如果有意义的话不会将它们一起打印...
我之前尝试过下面的循环,并重新排列了循环中的语句,老实说,我只是需要一双新鲜的眼睛。
预先对任何语法、错误的语法 talk/not 有意义和缺少信息深表歉意。这是我第一次使用 overflow,我已经很久没有碰过我的 IDE 了。非常感谢任何帮助!
boss = input("Text here: ")
for z in range(len(boss)):
for i in range(6):
if boss[z] == 'a':
print(ASCII["a" + str(i)], end='')
if boss[z] == 'b':
print(ASCII["b" + str(i)], end='')
print('')
z += 1
这是字典
ASCII = {
"a0" : " █████╗ ",
"a1" : "██╔══██╗",
"a2" : "███████║",
"a3" : "██╔══██║",
"a4" : "██║ ██║",
"a5" : "╚═╝ ╚═╝",
"b0" : "██████╗ ",
"b1" : "██╔══██╗",
"b2" : "██████╔╝",
"b3" : "██╔══██╗",
"b4" : "██████╔╝",
"b5" : "╚═════╝ "
}
输入:
Text here: ab
这是期望的输出:
█████╗ ██████╗
██╔══██╗██╔══██╗
███████║██████╔╝
██╔══██║██╔══██╗
██║ ██║██████╔╝
╚═╝ ╚═╝╚═════╝
这就是我要回来的:
█████╗
██╔══██╗
███████║
██╔══██║
██║ ██║
╚═╝ ╚═╝
██████╗
██╔══██╗
██████╔╝
██╔══██╗
██████╔╝
╚═════╝
仅供参考,非常重要的是它打印成这样:
a0 + b0
打印('')
a1 + b1
打印('')
a2 + b2
█████╗ ██████╗
then
█████╗ ██████╗
██╔══██╗██╔══██╗
then
█████╗ ██████╗
██╔══██╗██╔══██╗
███████║██████╔╝
etc.
外循环应该遍历图像的线条,而内循环遍历输入字符串中的字母:
ASCII = {
"a0" : " █████╗ ",
"a1" : "██╔══██╗",
"a2" : "███████║",
"a3" : "██╔══██║",
"a4" : "██║ ██║",
"a5" : "╚═╝ ╚═╝",
"b0" : "██████╗ ",
"b1" : "██╔══██╗",
"b2" : "██████╔╝",
"b3" : "██╔══██╗",
"b4" : "██████╔╝",
"b5" : "╚═════╝ "
}
boss = "abba"
for i in range(6):
for x in boss:
print(ASCII[x + str(i)], end='')
print('')
这会打印: