python基于逆序输出留空格的方法研究

本博文源于《程序设计竞赛入门》,留空格一般作为输出数据与数据的要求。而这种格式要求可能会难倒部分同学。所以本文通过python语言探讨留空格的循环如何处理。

原题再现—逆序输出

输入若干个整数,然后按输入的相反顺序显示这些数据。要求数据之间留一个空格。

Input:
1 2 3 4 5

Output:
5 4 3 2 1

解决方法

控制每两个数据之间以一个空格间隔,一般常用如下两种方案。
方案一:第一个数据除外,输出每个数据之前,先输出一个空格
方案二:最后一个数据除外,输出每个数据之外,再输出一个空格.

但python语言如果输出可迭代对象(列表、元组、集合、字符串、字典),且要求数据之间间隔一个空格,则可以直接在这些可迭代对象之前加一个星号"*".这个方案详情见方案3

方案1解决代码

代码使用方案1,代码如下:

a = list(map(int,input().split()))
n = len(a)

for i in range(n-1,-1,-1):
    if i != n-1:
        print(' ',end='')
    print(a[i],end='')
print()

python基于逆序输出留空格的方法研究_第1张图片

方案2解决代码

代码使用方案2,代码如下:

a = list(map(int,input().split()))
n = len(a)

for i in range(n-1,-1,-1):
    print(a[i], end='')
    if i != 0:
        print(' ',end='')
print()

在这里插入图片描述

方案3解决代码

python中*a输出作为print()进行输出,例如print(*[1,2,3,4,5])相当于print(1,2,3,4,5)

a = list(map(int,input().split()))
a.reverse()
print(*a)

python基于逆序输出留空格的方法研究_第2张图片

总结

本博文通过逆序输出留空格的方式进行编码研究。留出空格是一种,如果只是要求不同,那么只需要加以更改就行。比如把空格改为逗号也是同理。

你可能感兴趣的:(OJ尝试,列表,python)