Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
75 views
in Technique[技术] by (71.8m points)

python - How to insert a number+1, +2 next to the position of that number in the list?

I want to be able to insert numbers +1 , +2 based off the number in the list, directly next to that number it is based off of.

Example:

# existing list
list1 = [1,10,100]

#wanted output: 
[1,2,3, 10,11,12, 100,101,102]

#I spaced out the output list for ease of reading/understanding what it is I want to do.

I would also like to be able to add up to +7 and more, so if it is possible please help make it efficient in this way.

question from:https://stackoverflow.com/questions/65884934/how-to-insert-a-number1-2-next-to-the-position-of-that-number-in-the-list

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You can use a simple nested comprehension:

list1 = [1, 10, 100]
n = 3  # or 7 or whatever


list2 = [x for y in list1 for x in range(y, y+n)]
# [1, 2, 3, 10, 11, 12, 100, 101, 102]

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...