12. 函数与变量
乙醇 创建于 over 7 years 之前
最后更新: less than a minute 之前
阅读数: 228
背景
对于初学者来说函数的概念比较的烧脑,刚开始理解起来会各种困难,不过没关系,继续多多练习,习惯之后就不会有太多问题了。
这一节里我们解决一个小问题,就是函数里的变量名和函数外的变量名是不是会冲突的问题。
结论是不冲突,下面我们演示一下具体情况。
代码实现
新建名为print_case01.py
,内容如下
def print_case_count(success, failed):
total_count = success + failed
print(f"一共{total_count}个用例, 成功{success}个, 失败{failed}个")
def print_end():
print('打印结束')
print('第一次运行')
print_case_count(95, 5)
print('第二次运行')
success = 101
failed = 0
print_case_count(success, failed)
print('第三次运行')
total = 100
failed = 7
print_case_count(total - failed, failed)
print_end()
上面的代码说明了一些问题
- 函数调用有很多的方式,传参的时候我们可以直接传值,传变量,甚至是合法的表达式(
total - failed
) - 函数外的变量名不会影响函数内的,另一种说法是我们可以在函数内用函数外相同的变量名
运行
在命令行中使用下面的命令去执行代码
$ python print_case01.py
你应该可以看到
按照下面展示的情况进行输入,如果没有出错的话,你应该可以看到命令行窗口显示如下的内容
第一次运行
一共100个用例, 成功95个, 失败5个
第二次运行
一共101个用例, 成功101个, 失败0个
第三次运行
一共100个用例, 成功93个, 失败7个
打印结束
动手时间
- 修改
print_case_count()
函数,使其可以输出用例的通过率 - 自行去了解一下python中变量的作用域,推荐搜索关键字python variable scope
- 自行去了解什么是全局变量,什么是局部变量
常见问题
为什么搜索的时候推荐英文关键字? 英文关键字可以使我们找到第一手官方的解释,准确性更高。另外阅读一些英文文档也不是啥坏事。
怎么去计算用例的通过率? 公式大概是
success_count / total_count
,注意算出来的结果应该是浮点型什么是浮点型? 简单理解为带有小数位的数,如果你对这个答案不满意,你可以看一下这里