如何将100个降序随机整数排列为5行20列的格式?
解决方法
这里提供两种简单的实现方式,让排序后的数字按5行20列输出:
方法一:切片分组打印
利用列表切片每次截取20个元素,循环生成5行:
import random def main(): list_A = [random.randint(1, 100) for num in range(100)] list_A.sort(reverse=True) # 从索引0开始,每次步长20,截取20个元素作为一行 for i in range(0, 100, 20): # 将每行的数字转为字符串并用空格连接,再打印 print(' '.join(map(str, list_A[i:i+20]))) if __name__ == "__main__": main()
方法二:计数换行打印
遍历列表时记录打印个数,每20个数字就换行:
import random def main(): list_A = [random.randint(1, 100) for num in range(100)] list_A.sort(reverse=True) count = 0 for num in list_A: # 打印数字,结尾用空格代替默认换行 print(num, end=' ') count += 1 # 每打印20个数字就换行 if count % 20 == 0: print() if __name__ == "__main__": main()
两种方法都能实现需求,第一种代码更简洁,第二种逻辑更直观,你可以根据习惯选择。
内容的提问来源于stack exchange,提问作者Kay
相关产品推荐
相关产品推荐

