编程语言
首页 > 编程语言> > 第017讲:函数 - Python的乐高积木

第017讲:函数 - Python的乐高积木

作者:互联网

第017讲:函数 - Python的乐高积木


测试题

0. 你有听说过DRY吗?

# DRY(Don't Repeat Yourself.)原则
# 不要重复拷贝一段代码

1. 都是重复一段代码,为什么我要使用函数(而不使用简单的拷贝黏贴)呢?

使用函数有以下好处:

2. 函数可以有多个参数吗?

3. 创建函数使用什么关键字,要注意什么?

def MyFun():
    # 函数体

# 非函数体

4. 请问这个函数有多少个参数?

def MyFun((x, y), (a, b)):
    return x * y - a * b
# 修改方式
>>> def MyFun():
        return x[0]*x[1] - y[0]*y[1]

>>> MyFun((1,3),(2,5))
-7

5. 请问调用以下这个函数会打印什么内容?

>>> def hello():
        print('Hello World!')
        return
        print('Welcome To FishC.com!')

>>> hello()
'Hello World!'

动动手

0. 编写一个函数 power() 模拟内建函数 pow(),即 power(x, y) 为计算并返回 x 的 y 次幂的值。

def power(x,y):
    c = x**y
    print(c)
power(2,2)

1. 编写一个函数,利用欧几里得算法(脑补链接)求最大公约数,例如 gcd(x, y) 返回值为参数 x 和参数 y 的最大公约数。

def gcd(x,y):
    while y: # y没被除尽就表示余数不为0,及True,则继续循环下去
        t = x % y
        x = y
        y = t
    return x

2. 编写一个将十进制转换为二进制的函数,要求采用“除2取余”(补脑链接)的方式,结果与调用 bin() 一样返回字符串形式。

def bin(dec):
    temp = [] # 空列表,存放计算的值
    result = '' # 空字符串,最后来拼接每一个值
    while dec:
        quo = dec % 2 # 把十进制除以2的余数赋予变量
        dec = dec // 2 # 第一次循环后将十进制除以2取整赋值用于下一次计算
        temp.append(quo) # 将余数写入列表保存

    while temp: # 将列表中每一个值提取出来
        result += str(temp.pop()) # 倒序形式拼接

    return result

print(bin(181))

标签:return,函数,power,Python,乐高,017,print,dec,def
来源: https://www.cnblogs.com/jaderadish/p/14852377.html