鱼C论坛

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

[学习笔记] 论.技术.Python.(旧)零学Python第017讲:初识函数结构,反馈,输出

[复制链接]
发表于 2021-11-5 20:47:47 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 小蜂队 于 2022-4-10 19:10 编辑

借用小甲鱼老师的代码让我们一起来学习起来吧
0. 编写一个函数 power() 模拟内建函数 pow(),即 power(x,y) 为计算并返回 x 的 y 次幂的值。
  1. def power(x, y):         #建立函数,函数名称叫做 power x 与 y 是参数
  2.     result = 1
  3.    
  4.     for i in range(y):      #for 循环导出 y 的值
  5.         result *= x

  6.     return result         # 反馈结果

  7. print(power(2, 3))

  8. #或者:
  9. def power(x,y):
  10.     return x ** y        #这个函数更加简介 易读
复制代码

1.编写一个函数,利用欧几里得算法求最大公约数,例如 gcd(x,y) 返回参数 x 和 y 的最大公约数。
  1. def gcd(x, y):
  2.     while y:          # y 为 0 时 while 循环结束
  3.         t = x % y           #  y 对 x 进行取余
  4.         x = y          # y 值赋值给 x
  5.         y = t               # t 赋值给 y

  6.     return x                       # 反馈 x 的值
  7.    
  8. print(gcd(4, 6))
复制代码

2.编写一个将十进制转换为二进制的函数,要求采用“除2取余”脑补链接的方式,结果与调用 bin() 一样返回字符串形式。
  1. def Dec2Bin(dec):
  2.     temp = []                #创建一个空列表
  3.     result = ''                 #创建一个空字符串

  4.     while dec:                              # dec 表示一个数,当 dec == 0 时 while 循环结束
  5.         quo = dec % 2                   #quo 的值被计算看是 1 还是 0
  6.         dec = dec // 2                    # dec 被 2 取余再赋值给 dec
  7.         temp.append(quo)

  8.     while temp:
  9.         result += str(temp.pop())

  10.     return result

  11. print(Dec2Bin(62))
复制代码

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-20 12:14

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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