我正在尝试基于我正在创建的功能构建网格。我为
分配了一个内部变量grid1(number):
D = ('-' * number)
S = (' ' * number)
H = print('+'+ D +'+' + D + '+')
V = print('|'+ S + '|' + S + '|' '\n')
print( H '\n' (V * number) + H '\n'+ (V * number) + H)
基本上我试图创建一个2 x 2的网格,当它第二次打印V变量,或者甚至是下一个H时,变量返回为None。据我所知,我没有创建迭代器,因此仍应分配变量。
我错过了范围变量吗?
答案 0 :(得分:0)
我假设您想要将字符串分配给H和V,然后在下一个print语句中再次使用它们。在这种情况下,您需要删除前两个print
语句,并仅对变量进行赋值。通过其他一些修复,可以得到:
def grid1(number):
D = ('-' * number)
S = (' ' * number)
H = '+'+ D +'+' + D + '+'
V = '|'+ S + '|' + S + '|' '\n'
print( H + '\n' + (V * number) + H + '\n' + (V * number) + H)
导致例如:
>>> grid1(3)
+---+---+
| | |
| | |
| | |
+---+---+
| | |
| | |
| | |
+---+---+