Day02—循环结构
在Python中构造循环结构有两种做法,一种是for-in循环,一种是while循环,那么接下来逐个做个介绍吧:
for-in 循环
说的永远不如实际操作的,那就开始吧?
#用一个简单的for循环实现1~8求和
#python
sum=0
for x in range(9):
#range是一个前闭后开的可迭代对象
sum +=x
print(sum)
需要特别说明的是range 类型,它可以产生一个不变的数值序列,通常用在循环中,如
- range(60) 可以产生一个0到59的整数序列
- range(1,101) 可以产生一个1到100的整数序列
- range(1,60,2)可以产生一个1到59的奇数序列,其中步长为2,其中第三个变量是数值序列的增量。
- range(60,1,-2)可以产生一个1到59的逆序排列的奇数序列,其中步长为-2.
非常nice,good job,skr,skr ,skr.那么,就要用上面的知识做一个小练习啦!!!
#用for循环实现1到40之间奇数的乘积
um=0
for i in range(40,1,-2):
sum*=i
print(i)
print(sum)
或用if分支结构来实现相同的功能!
sum=0
for i in range(1,40,2):
if i % 2 != 0:
sum*=i
print(sum)
好啦,if-in 循环就写到这儿,感觉其实也不难 啊哈哈哈哈啊哈哈哈哈哈啊
接着 来一个 while循环 (感觉有点…?瞌睡啊)
有很多时候我们不知道具体循环次数和循环结构,我们推荐使用while循环,其通过循环产生一个值的表达式来控制循环,如果返回值为true循环继续,反之返回值为false循环结束。
好,那就通过一个列子来实际说明一下:
#利用while 循环来实现取出字符串str中的元素
str='CCN1594733'
while i <= len[str]:
print[i]
i+=1
#利用python得出1到10所有奇数的乘及
sum = 0
num = 1
while num <= 10:
sum *= num
num += 2
print(sum)
课后小练习:
#用for循环输出乘法口决
for i in range(1, 10):
for j in range(1, i + 1):
print('%d*%d=%d' % (i, j, i * j), end='\t')
print()
函数和函数模块的使用
函数的作用是简化代码,当你需要重复执行某些代码的时候,并且只有一些微小的改变,你就可以使用函数.
声明 函数名字 (参数)
def func_name([params]):
执行体
return xxx
func_name([params])
当你函数处理完的内容需要再次进行处理的时候,你就需要return
def Joker():
print('Hello Joker')
# return 100 输出100条
定义函数
在Python中可以使用def关键字来定义函数,和变量一样每个函数也有一个响亮的名字,而且命名规则跟变量的命名规则是一致的。在函数名后面的圆括号中可以放置传递给函数的参数,这一点和数学上的函数非常相似,程序中函数的参数就相当于是数学上说的函数的自变量,而函数执行完成后我们可以通过return关键字来返回一个值,这相当于数学上说的函数的因变量。
#求阶乘
m = int(input('m = '))
n = int(input('n = '))
fm = 1
for num in range(1, m + 1):
fm *= num
fn = 1
for num in range(1, n + 1):
fn *= num
fmn = 1
for num in range(1, m - n + 1):
fmn *= num
print(fm // fn // fmn)
或
def jicheng(n)
result=1
for num in range(1,n+1):
result*=num
return result
c=jicheng(8)
n=jiecheng(4)
b=jicheng(3)
m=c/n*b
print(m)
哇塞,就到这里吧,总结到此为止。
CCN 加油???