Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 正在尝试添加虚线_Python_Python 3.x - Fatal编程技术网

Python 正在尝试添加虚线

Python 正在尝试添加虚线,python,python-3.x,Python,Python 3.x,正在尝试在我的行之间添加虚线。任何帮助都会很好。我只是想不通。附上一张照片作为例子。 到目前为止,我的代码是: numbers = [8, 7, 6, 5, 4, 3, 2, 1] letters = ["a", "b", "c", "c", "e", "f", "g", "h"] for x in numbers: for y in

正在尝试在我的行之间添加虚线。任何帮助都会很好。我只是想不通。附上一张照片作为例子。 到目前为止,我的代码是:

numbers = [8, 7, 6, 5, 4, 3, 2, 1]
letters = ["a", "b", "c", "c", "e", "f", "g", "h"]
for x in numbers:
  for y in letters:
     print("%s%d" % (y, x), end="\n")
     print()

您似乎要做两件事:用
|
分隔每个字母迭代,用
-
分隔每行(和数字迭代)

  • 如果您希望在每个元素(您的字母+数字打印输出)后都有一条垂直线,您可以将
    结束=
    字符替换为
    符号(并删除额外的
    打印()
    ,这将添加换行符)。这看起来像:
  • 要在每次
    number
    迭代(嵌套for循环中的外部循环)后添加虚线,可以在
    y
    for循环的末尾添加
    print(“----”)
    ,但在
    x
    for循环内,即
在递增之前,在每个数字的末尾打印一个“-----”,即

a8 | b8 | c8 | d8 ...
-------
a7 | b7 | c7 | d7 ...

如果您事先知道迭代(a-h)的“列”数,您可以选择此
-
行的长度以匹配这些列的长度

您是这样想的吗


numbers = [8, 7, 6, 5, 4, 3, 2, 1]
letters = ["a", "b", "c", "c", "e", "f", "g", "h"]

for x in numbers:
    row = '|'
    for y in letters:
        row += f' {y}{x} |'
    print('-'*len(row))
    print(row)
print('-'*len(row))

你能给我们举个例子,说明你期望你的产出是怎样的吗?你的意思是什么
print(“--------------”
?默认情况下,只在print语句中附加了一个示例图像
end=“\n”
,因此您不必明确声明。此外,要打印虚线,您只需打印('-'*40),它将打印40
-
。缺少顶行,并且第一列中的填充太多。此外,您可以只执行
f'{y}{x}|'
,因为转换为str是默认值。而不是
print('-'*42)
使用
print('-'*len(row))
还可以将打印切换到
print('-'*len(row))
下一行
print(row)
和一行
print('-'*len(row))
完成x的for循环后。@RasmusNielsen如果您使用注释中的建议修复代码,您可能会获得一些额外的投票;-)谢谢你的建议!修好了!
a8 | b8 | c8 | d8 ...
-------
a7 | b7 | c7 | d7 ...

numbers = [8, 7, 6, 5, 4, 3, 2, 1]
letters = ["a", "b", "c", "c", "e", "f", "g", "h"]

for x in numbers:
    row = '|'
    for y in letters:
        row += f' {y}{x} |'
    print('-'*len(row))
    print(row)
print('-'*len(row))