鱼C论坛

 找回密码
 立即注册
查看: 1376|回复: 0

[技术交流] 《零基础入门学习python》第17讲课后练习

[复制链接]
发表于 2017-9-26 11:14:20 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 铁棍阿童木 于 2017-9-26 12:14 编辑

第17讲课后练习
0.没有!

1.都是重复一段代码,为什么要使用函数呢?
答:1、可以有效减少代码量,使得代码的可读性更好,也更加简洁美观;
      2、代码编写效率更高,后续只需重复调用就行了。

2.函数可以有多个参数吗?
答:可以,理论上参数的数量不受限制,但是为了让函数的功能更加简洁直观,一般不超过3个参数为好。

3.    创建函数用什么关键字,要注意什么?
答:def 关键字用于创建函数,需要注意的是:
      1.取一个易懂易记的函数名;
      2.不要忘记在加上函数名后面加上小括号()和冒号:
      3.如果有参数,那么最好取一个简单直观的参数名放在小括号里面。

4.请问这个函数有多少个参数?
>>>def MyFun((x,y),(a,b))
             return x*y-a*b
答:我以为是两个,结果是报错,python不允许这样的参数格式。

5.请问调用以下函数会打印什么内容?
>>>def hello ():
             print("hello world!")
             return
             print ("welcome to FishC.com")
答:只会打印“hello world!”return后面的print语句不会被执行。

动动手:
0.编写一个函数power()模拟内建函数pow()计算并返回x的y次幂的值。
def power (x, y):
    result = x ** y
    return result


1.编写一个函数,利用欧几里得算法求最大公约数,返回值为参数x和参数y的最大公约数。
# 欧几里得算法(辗转相除法)求最大公约数
def My_gcd_Func(num1,num2):
    while True:
        divisor = num1 % num2
        if divisor != 0:
           num1 = num2
           num2 = divisor
           continue
        else:
           return num2
备注:看了小甲鱼的代码侯,感觉自己的代码啰嗦了点。哈哈哈,不过也还行!

2.编写一个将十进制转换为二进制的函数,要求采用“除2取余”的方法,结果与调用bin()一样返回字符串形式。
# remainder变量用来记录余数
# 创建一个名为sesult的字符串变量,用来展示最终计算结果。
# 空列表num_list用于存放每一轮计算的余数
def dec_bin(num):
    result = "0b"        #这个的作用就是模仿bin()返回的字符串形式以0b开头。
    num_list = []
    while True:
        remainder = num - num // 2 * 2              #这一行我想多了,其实只要取余%就行了。
        num = num // 2
        num_list.append(remainder)
        if num ==0:
            num_list.reverse()
            for each in num_list:
                string = str(each)
                result = result[:] + string
            break
    return result
运行结果与bin()对比如图:
备注:这个函数只能将十进制整数转换成二进制。
111.jpg
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 05:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表