我试图制作一个看起来像这样的电路板:
x ! x ! x
~ ~ ~ ~ ~
x ! x ! x
~ ~ ~ ~ ~
x ! x ! x
这是我到目前为止所做的:
def print_tic_tac_toe(horiz_char, vert_char):
print(vert_char*2)
print(horiz_char*5)
return
print_tic_tac_toe('~', '!')
我无法弄清楚如何获得' x'在垂直字符之间打印。我该怎么办呢?是否涉及换行符?
答案 0 :(得分:0)
使用join
使用vert_char
加入x
列表。 STH。像这样:
def print_tic_tac_toe(horiz_char, vert_char):
print(vert_char.join(['x']*3))
print(horiz_char*5)
print(vert_char.join(['x']*3))
print(horiz_char*5)
print(vert_char.join(['x']*3))
print_tic_tac_toe('~', '!')
x!x!x
~~~~~
x!x!x
~~~~~
x!x!x
或更短:
def print_tic_tac_toe(horiz_char, vert_char):
print(('\n'+(horiz_char*5)+'\n').join(vert_char.join(['x']*3) for _ in range(3)))
答案 1 :(得分:0)
您可以尝试这样:
def print_tic_tac_toe(horiz_char = '', vert_char = ''):
print(('X '+vert_char)*2+'X')
if horiz_char != '':
print(horiz_char*5)
return
print_tic_tac_toe('~ ', '! ')
print_tic_tac_toe('~ ', '! ')
print_tic_tac_toe('', '! ')
输出:
X ! X ! X
~ ~ ~ ~ ~
X ! X ! X
~ ~ ~ ~ ~
X ! X ! X
答案 2 :(得分:0)
def print_tic_tac_toe(horiz_char, vert_char):
print('x %s x %s x' %(vert_char, vert_char))
print('%s %s %s %s %s' %(horiz_char, horiz_char, horiz_char, horiz_char, horiz_char))
print('x %s x %s x' %(vert_char, vert_char))
print('%s %s %s %s %s' %(horiz_char, horiz_char, horiz_char, horiz_char, horiz_char))
print('x %s x %s x' %(vert_char, vert_char))
print_tic_tac_toe('~', '!')