range用法與氣泡排序

2021-08-15 18:34:42 字數 1360 閱讀 6915

python2中的xrange函式在python3中更名為range,python2中的range函式在python3中已取消。
>>>range(5) #代表從0到5(不包含5)

[0,1,2,3,4]

>>>range(1,5) #代表從1到5(不包含5)

[1,2,3,4]

>>>range(1,5,2) #代表從1到5,間隔2(不包含5)

[1,3]

。 氣泡排序

array = [1,3,5,4,8,9,6]

for i in

range(len(array)-1,0,-1):

#print (i)

for j in

range(0,i):

# print (j)

ifarray[j] > array[j+1]:

array[j],array[j+1] = array[j+1],array[j]

print (array)

>>>[1,3,4,5,6,8,9]

解析:

第一行,乙個亂序的列表array;

第二行,我們替換一下:range(6,0,-1),意思是從6到1間隔-1,也就是倒序的range(2,7,1),隨後將這些值迴圈賦給 i,那麼 i 的值就是 [6 ,5, 4 ,3, 2]

第三行,迴圈賦值給 j ,那麼 j 的值就是 [0,1,2,3,4,5] [0,1,2,3,4] [0,1,2,3] [0,1,2] [0,1],以上兩個迴圈巢狀起來結果將會是

i——-6

j——-0——-1——-2——-3——-4——-5

i——-5

j——-0——-1——-2——-3——-4

i——-4

j——-0——-1——-2——-3

i——-3

j——-0——-1——-2

i——-2

j——-0——-1

if 判斷

>>>array = [1,3,5,4,8,9,6]

>>>array[0]

>1

>>>array[1]

>3

>>>array[2]

>5

>>>array[3]

>4

>>>array[4]

>8

>>>array[5]

>9

>>>array[6]

>6

其實就是給無序列表array排序。

5. array[j],array[j+1] = array[j+1],array[j] 替換賦值

6. 列印 。

Python 氣泡排序有關range

問題源於寫氣泡排序的時候,遇到了for i n i 1 i 用python怎麼實現?答案 相當於for i in range n,1,1 所以for j 1,j i,j 相當於for j in range 1,i 1,1 range start,stop step 引數說明 完整的氣泡排序 def ...

python for 與 range的用法

1.生成乙個0到9的序列 for x in range 0,10 print x else print 迴圈結束 2.生成乙個0到9的偶數序列 for x in range 0,10,2 print x else print 迴圈結束 3.生成乙個0到9的偶數序列並且用分隔符進行拼接 for x i...

range 函式用法

python range 函式可建立乙個整數列表,一般用在 for 迴圈中。函式語法 range start,stop step 引數說明 start 計數從 start 開始。預設是從 0 開始。例如range 5 等價於range 0,5 stop 計數到 stop 結束,但不包括 stop。例...