码迷,mamicode.com
首页 > Web开发 > 详细

python循环综合运用

时间:2018-05-14 17:01:59      阅读:42      评论:0      收藏:0      [点我收藏+]

标签:

本文和大家分享的主要是python循环的综合使用相关内容,一起来看看吧,希望对大家学习python有所帮助。

break语句,用在循环体中,迫使循环立即终止,即跳出所在循环体,继续执行循环体后面的语句。

sum=0

i=1while i:

sum+=i

i+=1

if i>=101:

breakprint(" the 1+2+..100={}".format(sum))

the 1+2+..100=5050

break 经常和if语句使用,满足条件跳出循环体,但是据大佬说,循环中不建议使用break语句,跳来跳出逻辑容易出现问题。就像被抛弃的goto

def maxys(m,n):

r=m%n

while r!=0:

m=n

n=r

r=m%n

return n

>>> maxys(33,11)11>>> maxys(6,5)

continue语句,与break语句不同,在循环中执行continue语句,并不会退出循环语句,而是立即结束本次循环,重新开始下一次循环

def printthreenum(n):

for i in range(1,n+1):

if i%3==0:

continue

print(" %d"%(i),end=" ")

>>> printthreenum(20)

1  2  4  5  7  8  10  11  13  14  16  17  19  20

循环嵌套,基本复杂点的code,都涉及到嵌套问题。

公约数的因子,求最大公约数,暴力法解决

def maxys(m,n):

i=2

max=1

while i<=m and i<=n:

while m%i==0 and n%i==0:

max*=i

m=m//i

n=n//i

i+=1

return max

>>> maxys(8,2)2>>> maxys(13,2)1

采用减治法的选择排序,算法

def sort(arr):

i=0

while i<len(arr)-1:

j=i+1

temp=arr[j]

flag=0

while j>0:

if arr[j-1]>temp:

arr[j]=arr[j-1]

j-=1

flag=1

else:

break

if flag:

arr[j]=temp

i+=1

return arr

arr=[66,1,-8,22,88]

sort(arr)

[-8, 1,22, 33, 66]

选择排序法:每次选择最小的元素。

def xzsort(arr):

i=0

while i<len(arr)-1:

min=arr[i]

j=i+1

#选择[i,len(list)-1]中最小的元素

while j<len(arr):

if min>arr[j]:

min=arr[j]

j+=1

id=arr.index(min) #记录要交换的元素下标

#交换

if min!=arr[i]:

#temp=arr[i]

#arr[i]=min

#arr[id]=temp

arr[i],arr[id]=arr[id],arr[i]

i=i+1

return arr

arr=[66,-5,99,56,4,668,68]

xzsort(arr)

[-5, 4, 56, 66, 68, 99, 668]

我是c系,对python的思维还是欠缺,选择排序,出现了不少小问题,无论是循环缩进,还是pythonlist的下标获取,以及交换。。。

乘法口诀表

for i in range(1,10):

for j in range(1,i+1):

print("{}*{}={}".format(j,i,i*j),end="  ")

print()

1*1=1

1*2=2  2*2=4

1*3=3  2*3=6  3*3=9

1*4=4  2*4=8  3*4=12  4*4=16

1*5=5  2*5=10  3*5=15  4*5=20  5*5=25

1*6=6  2*6=12  3*6=18  4*6=24  5*6=30  6*6=36

1*7=7  2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49

1*8=8  2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64

1*9=9  2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=8

不说了,时间有限,循环嵌套,外加if语句,是编程的重点。

**不说了,循环嵌套真的很重要,多多体会被。

 

 

来源:网络

python循环综合运用

标签:

(0)
(0)
   
举报
评论 一句话评论(0
0条  
登录后才能评论!
wjunxi
加入时间:2017-06-15
  关注此人  发短消息
文章分类
wjunxi”关注的人------(0
wjunxi”的粉丝们------(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!