如何创建一个将每个数字重复两次的数组?

我想在打印时创建一个具有以下结构的数组:

1: (10,20),

2: (20,30),

3: (30,40),

4: (40,50),

等等...

对 python 真的很陌生,所以任何事情都有帮助!使用蟒蛇3。


拉风的咖菲猫
浏览 101回答 5
5回答

隔江千里

你可以简单地通过 python range function range(start, end, stepsize)final_lst = []for i in range(10, 200, 10):    final_lst.append([i, i+10])print(final_lst)输出[[10, 20], [20, 30], [30, 40], [40, 50], [50, 60], [60, 70], [70, 80], [80, 90], [90, 100], [100, 110], [110, 120], [120, 130], [130, 140], [140, 150], [150, 160], [160, 170], [170, 180], [180, 190], [190, 200]]::编辑::for i in range(1, 10):    print('%s: (%s,%s),'%(i, i*10, (i+1)*10))输出1: (10,20),2: (20,30),3: (30,40),4: (40,50),5: (50,60),6: (60,70),7: (70,80),8: (80,90),9: (90,100),

慕田峪7331174

让我成为你的名单。里面有什么并不重要。使用 zip 创建一个新列表,其中包含所需的功能。zip, 将两个列表的元素匹配在一起。如果你zip有自己的列表,你将有一个新列表,第一个列表中的每个元素在其中重复两次。 l = [1, 2, 5, 11, 12]for element in zip(l, l):     print(element)输出:(1, 1)(2, 2)(5, 5)(11, 11)(12, 12)

湖上湖

您可以编写一个range用于获取一系列值的函数和一个列表理解(基本上是一个内联 for 循环)来生成一个元组列表。是这样的:def get_repeated_list(max_n):    values = range(10, max_n, 10)    return [(i, i+10) for i in values]用法示例:>>> get_repeated_list(50)[(10, 20), (20, 30), (30, 40), (40, 50)]

陪伴而非守候

取两个变量 cnt1 和 cnt2import numpy as np    myList = []cnt1=1cnt2=2for i in range(n):  #n is desired length    myList.append([10*cnt1,10*cnt2])    cnt1+=1    cnt2+=1myArray = np.array(myList)

LEATH

看起来您想要做的是将一个列表转换为另一个包含上一个/下一个元素的列表。listA = [ 10 * i for i in range( N ) ]listB = [ (listA[ i ], listA[ i + 1 ]) for i in range( len( listA ) - 1 ) ];
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python