Python "\n"标记额外行

标签 python newline

我正在尝试在命令行中构建一个简单的板。

问题: 当我使用“\n”结束当前行时,它会添加一个额外的空行。我该如何解决?

代码:

def drawBoard():
    board = [ [0,0,0,0,0,0,0,0,0],
              [0,0,0,0,0,0,0,0,0],
              [0,0,0,0,0,0,0,0,0],
              [0,0,0,0,3,2,1,0,0],
              [0,0,0,0,0,0,0,0,0],
              [0,0,0,0,0,0,0,0,0],
              [0,0,0,0,0,0,0,0,0],
              [0,0,0,0,0,0,0,0,0],
              [0,0,0,0,0,0,0,0,0]
            ]
    return board

def printBoard():
    for i in drawBoard():
        for a in i:
            print a,
        print "\n"

printBoard()

输出:

0 0 0 0 0 0 0 0 0 

0 0 0 0 0 0 0 0 0 

0 0 0 0 0 0 0 0 0 

0 0 0 0 3 2 1 0 0 

0 0 0 0 0 0 0 0 0 

0 0 0 0 0 0 0 0 0 

0 0 0 0 0 0 0 0 0 

0 0 0 0 0 0 0 0 0 

0 0 0 0 0 0 0 0 0 

感谢您的帮助。

最佳答案

使用join(),不要依赖于, 进行格式化,而且print 会自动将光标放在换行符上时间,因此无需在您的 print 中添加另一个 '\n'

In [24]: for x in board:
    print " ".join(map(str,x))
   ....:     
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 3 2 1 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0

关于Python "\n"标记额外行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13434423/

相关文章:

java - 你如何防止 scanner.next() 包含换行符?

C++读取CSV文件避免换行符

python - 如何将一个字符串散列成 8 位数字?

c++ - 程序找不到回车符或换行符。返回超出范围

python - 如何获取日期时间所在的期初和期末日期时间值?

python - telnetlib.write() 不复制 telnet.interact()

python - 如何控制 lxml xpath text() 函数中的换行处理?

C++ 文件读取和拆分列

python - 针对测试数据库运行迁移

java - 通过从 Java/Python 中的照片中删除黑色边框,从图像中裁剪精确的文档纸张