Python 如何在for循环中不在语句末尾打印换行符
这是显示实际输出和输出I的图像 我得到:Python 如何在for循环中不在语句末尾打印换行符,python,loops,newline,Python,Loops,Newline,这是显示实际输出和输出I的图像 我得到: 问题在于,您需要跳过最外层循环末尾的换行符和每行末尾的空格。对于一般迭代器,这需要一些额外的工作,但对于您的简单情况,只需检查i和j即可: r, c = input().split() r=int(r) c=int(c) list1=[] v=1 for i in range(r): list2=[] for j in range(c): list2.append(v) v=v+1 list1.ap
问题在于,您需要跳过最外层循环末尾的换行符和每行末尾的空格。对于一般迭代器,这需要一些额外的工作,但对于您的简单情况,只需检查
i
和j
即可:
r, c = input().split()
r=int(r)
c=int(c)
list1=[]
v=1
for i in range(r):
list2=[]
for j in range(c):
list2.append(v)
v=v+1
list1.append(list2)
for i in range(r):
for j in range(c):
print(list1[i][j],end=" ")
print()
范围(r)内i的:
对于范围(c)内的j:
打印(列表1[i][j],end=“”如果j
问题在于,您需要跳过最外层循环末尾的换行符和每行末尾的空格。对于一般迭代器,这需要一些额外的工作,但对于您的简单情况,只需检查i
和j
即可:
r, c = input().split()
r=int(r)
c=int(c)
list1=[]
v=1
for i in range(r):
list2=[]
for j in range(c):
list2.append(v)
v=v+1
list1.append(list2)
for i in range(r):
for j in range(c):
print(list1[i][j],end=" ")
print()
范围(r)内i的:
对于范围(c)内的j:
打印(列表1[i][j],end=“”如果j
您可以创建子列表,对需要打印的数据进行分区。
在打印每个部分之前,请测试是否需要打印前一行的'\n'
,以及是否需要打印不带'\n'
的分区:
for i in range(r):
for j in range(c):
print(list1[i][j], end=" " if j < c - 1 else "")
if i < r - 1:
print()
为每个分区创建需要打印的所有数字的范围^^^^^^^^^
创建在^^^^^^^^^^
中使用的每个“行”的起始编号(减少1,但固定在1的范围内)^^^^^^^^^^^^^^
返回序列内部的位置和该位置的数据-您只想在第一次输出完成后打印enumerate(partitioned)
李>'\n'
分区后
-输出…的完成,不会再次输入-因此在它之后没有\n
'6 3'
的输出(\n添加是为了清楚起见):
已分区的
为:
1 2 3\n
4 5 6\n
7 8 9\n
10 11 12\n
13 14 15\n
16 17 18
您可以创建子列表来划分需要打印的数据。
在打印每个部分之前,请测试是否需要打印前一行的'\n'
,以及是否需要打印不带'\n'
的分区:
for i in range(r):
for j in range(c):
print(list1[i][j], end=" " if j < c - 1 else "")
if i < r - 1:
print()
^^^^^^^^^
为每个分区创建需要打印的所有数字的范围
^^^^^^^^^^
创建在^^^^^^^^^^^^^^
中使用的每个“行”的起始编号(减少1,但固定在1的范围内)
enumerate(partitioned)
返回序列内部的位置和该位置的数据-您只想在第一次输出完成后打印'\n'
李>
最后一次分区后
-输出…
的完成,不会再次输入-因此在它之后没有\n
'6 3'
的输出(\n添加是为了清楚起见):
已分区的
为:
1 2 3\n
4 5 6\n
7 8 9\n
10 11 12\n
13 14 15\n
16 17 18
我也有同样的问题,我就是这么做的:
>>帮助(打印)
我对python非常陌生,但这是我的代码,用于消除print语句末尾的新行:
对于ch in消息:
打印(ord(ch),结束=“”)
如果我想删除语句每行末尾的“”,因为它来自默认值(sep=“”),那么我将使用以下命令:
对于ch in消息:
打印(ord(ch),ch,sep='',如果ch==消息[-1]其他“”,结束='',)
#请注意,消息是一个字符串。我也有同样的问题,我就是这么做的:
>>帮助(打印)
我对python非常陌生,但这是我的代码,用于消除print语句末尾的新行:
对于ch in消息:
打印(ord(ch),结束=“”)
如果我想删除语句每行末尾的“”,因为它来自默认值(sep=“”),那么我将使用以下命令:
对于ch in消息:
打印(ord(ch),ch,sep='',如果ch==消息[-1]其他“”,结束='',)
#请注意,该消息是一个字符串。我建议将每行输出累积为数组中的元素,然后使用换行分隔符连接数组。在循环的最后一次迭代中尝试做一些不同的事情总是会导致混乱、复杂的代码。可能会重复Don't post终端输出的屏幕截图。使用代码格式。如果您不自己解决Hackerrank问题,有什么好处?我建议将每行输出累积为数组中的元素,然后使用换行分隔符连接数组。在循环的最后一次迭代中尝试做一些不同的事情总是会导致混乱、复杂的代码。可能会重复Don't post终端输出的屏幕截图。使用代码格式。如果你不自己解决黑客问题,有什么好处?@afzalsayed。我已经更新了我的答案,在这行末尾加上空格。@Afzalsayed。我已经更新了我的答案,以包含行末尾的空格。该问题的质量很差,但鉴于您提到了帮助功能的使用,此答案是可以接受的。标准库文档对内置函数的说明非常清楚。该问题的质量很差,但鉴于您提到了帮助函数的使用,这个答案是可以接受的。标准库文档对内置函数非常清楚