Python学习笔记——条件判断、循环和函数

条件判断

  • if语句
    与c语言类似,需要在条件后加冒号:
    具有相同缩进的代码被视为代码块,如果if语句判断为true就会执行这个代码块
score = 75
if score>=60:
    print 'passed'
    print 'ok!'
  • if…else…
if age >= 18:
    print 'adult'
else:
    print 'teenager'
  • if…elif…else
    要避免嵌套结构的 if … else …,我们可以用 if … 多个elif … else … 的结构,一次写完所有的规则。elif 意思就是 else if。
if age >= 18:
    print 'adult'
elif age >= 6:
    print 'teenager'
elif age >= 3:
    print 'kid'
else:
    print 'baby'

相当于

if age >= 18:
    print 'adult'
else:
    if age >= 6:
        print 'teenager'
    else:
        if age >= 3:
            print 'kid'
        else:
            print 'baby'

使用elif代替else if使得结构更加清晰。

循环

for循环

Python的 for 循环可以依次把list或tuple的每个元素迭代出来
例:

L = ['Adam', 'Lisa', 'Bart']
for name in L:
    print name

name 这个变量是在 for 循环中定义的,意思是,依次取出list中的每一个元素,并把元素赋值给 name,然后执行for循环体(就是缩进的代码块)。
在这里插入图片描述

while循环

while 循环不会迭代 list 或 tuple 的元素,而是根据表达式判断循环是否结束

N = 10
x = 0
while x < N:
    print x
    x = x + 1
  • break退出循环
    例:计算1至100的整数和
sum = 0
x = 1
while True:
    sum = sum + x
    x = x + 1
    if x > 100:
        break
print sum
  • continue继续循环
    例:计算1-100奇数和
sum = 0
x = 0
while True:
    x = x + 1
    if x > 100:
        break
    if x%2==0:
        continue
    sum=sum+x
print sum

多重循环

循环内部,还可以嵌套循环,例:

for x in ['A', 'B', 'C']:
    for y in ['1', '2', '3']:
        print x + y

在这里插入图片描述

函数

  • 编写函数
    在Python中,定义一个函数要使用 def 语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用 return 语句返回。
    如果没有return语句,函数执行完毕后也会返回结果,只是结果为 None。
    例:编写一个求绝对值的函数
def my_abs(x):
    if x >= 0:
        return x
    else:
        return -x
  • 返回多值的函数
    例:
import math
def move(x, y, step, angle):
    nx = x + step * math.cos(angle)
    ny = y - step * math.sin(angle)
    return nx, ny

x,y= move(100, 100, 60, math.pi / 6)
print x,y

(引用了math包中的sin和cos函数)
在这里插入图片描述
但其实这只是一种假象,Python函数返回的仍然是单一值,返回值是一个tuple,
将最后两行代码改写成

r = move(100, 100, 60, math.pi / 6)
print r

输出结果为:
在这里插入图片描述
所以,Python的函数返回多值其实就是返回一个tuple,但写起来更方便。

  • 定义默认参数
    定义函数的时候,可以有默认参数。
    例:定义一个计算 x 的n次方的函数:
def power(x, n):
    s = 1
    while n > 0:
        n = n - 1
        s = s * x
    return s

power(5,2)

如果计算x的平方的次数最多,可以将n的默认值设为2,这样一来,计算平方就不需要传入两个参数了:

def power(x, n=2):
    s = 1
    while n > 0:
        n = n - 1
        s = s * x
    return s

power(5)

由于函数的参数按从左到右的顺序匹配,所以默认参数只能定义在必需参数的后面

  • 可变参数
    如果想让一个函数能接受任意个参数,我们就可以定义一个可变参数,可变参数的名字前面有个 * 号,我们可以传入0个、1个或多个参数给可变参数。
    Python解释器会把传入的一组参数组装成一个tuple传递给可变参数,因此,在函数内部,直接把变量 args 看成一个 tuple 即可。
def fn(*args):
    print args
fn()
fn('a')
fn('a','b','c')

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值