全局变量和局部变量

局部里面定义 global name    ======将局部变量变成全局变量

nonlocal name # nonlocal,指定上一级变量,如果没有就继续往上直到找到为止

有一个嵌套例子,做了修改,更加合理了.(花了3小时),更能理解了

gxr = 'linhaifeng'
person_list = ['alex', 'wuqi', '','','','linhaifeng', 'zsc']
def ask_way(person_list):
print('-' * 60)
if len(person_list) == 0:
return '根本没人'
person = person_list.pop(0)
if person_list[0] == gxr:
print('%s说:我知道,老男孩就在沙河汇德商厦,下地铁就是%s' % (person, gxr))
print("----")
return '%s说:我知道,老男孩就在沙河汇德商厦,下地铁就是%s' % (person, gxr)
else:
print('hi 美男%s,敢问%s在何方' % (person, gxr))
print('%s回答道:我不知道,但念你慧眼识猪,你等着,我帮你问问%s' % (person, person_list[0]))
res = ask_way(person_list)
print('%s问的结果是: %s' % (person, res))
person_list.insert(0,person)
res="%s说"%person_list[0]+res
person_list.pop(0)
return res
v=ask_way(person_list)
print('%s问的结果是: %s' % ("我", v))
打印

hi 美男alex,敢问linhaifeng在何方
alex回答道:我不知道,但念你慧眼识猪,你等着,我帮你问问wuqi
------------------------------------------------------------
hi 美男wuqi,敢问linhaifeng在何方
wuqi回答道:我不知道,但念你慧眼识猪,你等着,我帮你问问1111
------------------------------------------------------------
hi 美男1111,敢问linhaifeng在何方
1111回答道:我不知道,但念你慧眼识猪,你等着,我帮你问问2222
------------------------------------------------------------
hi 美男2222,敢问linhaifeng在何方
2222回答道:我不知道,但念你慧眼识猪,你等着,我帮你问问3333
------------------------------------------------------------
3333说:我知道,老男孩就在沙河汇德商厦,下地铁就是linhaifeng
----
2222问的结果是: 3333说:我知道,老男孩就在沙河汇德商厦,下地铁就是linhaifeng
1111问的结果是: 2222说3333说:我知道,老男孩就在沙河汇德商厦,下地铁就是linhaifeng
wuqi问的结果是: 1111说2222说3333说:我知道,老男孩就在沙河汇德商厦,下地铁就是linhaifeng
alex问的结果是: wuqi说1111说2222说3333说:我知道,老男孩就在沙河汇德商厦,下地铁就是linhaifeng
我问的结果是: alex说wuqi说1111说2222说3333说:我知道,老男孩就在沙河汇德商厦,下地铁就是linhaifeng

还想修改,想想还是算了.

学到了林海峰,武沛齐讲的Day14完的更多相关文章

  1. 学到了林海峰,武沛齐讲的Day35 完 协程

    day3    requests.get  爬网页 greenlet  协程模块  还有asy!!!模快(后续版本) day4    事件驱动 day5    基础学习 day6    基础学习 da ...

  2. 学到了林海峰,武沛齐讲的Day34 完 线程 进程 协程 很重要

    线程 进程 协程 很重要 ...儿子满月回家办酒,学的有点慢,坚持

  3. 学到了林海峰,武沛齐讲的Day30 完 TCP UDP

    TCP UDP 其中讲了数据的传输.各有利弊 个人理解 就是这样将高并发,低数据,高数据的传输,稳定高效

  4. 学到了林海峰,武沛齐讲的Day16完

    函数嵌套 foo()()() ====  foo()>>>gxr   gxr()>>>wsb    wsb()>>执行wsb函数 lambda   一行 ...

  5. 学到了林海峰,武沛齐讲的Day37 完

    day1   多用户同时刻下载上传程序分析 day2   htlm介绍 觉得收货的季节到了 day3   htlm介绍 day4   htlm介绍 关键字介绍  Toray大仙 Toray大仙 day ...

  6. 学到了林海峰,武沛齐讲的Day31 完 TCP UDP

    多用户链接 验证等.学习了思路.还是很有用的..

  7. 学到了林海峰,武沛齐讲的Day17完-6 文件操作

    参考   https://www.cnblogs.com/linhaifeng/articles/5984922.html f=open('陈粒1',encoding='utf-8')     ope ...

  8. 学到了林海峰,武沛齐讲的Day19 迭代细讲

    在家加1个月学了8day的课  出差6天看了8day的课..说明再忙也是可以挤挤多学习的. 广州出差最后两天没学习.一天做车,一天做公司的事...4天就过去了. 老师讲的包子和鸡蛋需求不好...讲的有 ...

  9. 学到了林海峰,武沛齐讲的Day24-完 对象和实例

    学到这里估计就是坎了...日志都不想写了.. 对象和实例

随机推荐

  1. Git学习(二)——使用Git协同开发

    项目协同开发git操作 基本流程 1.开发前,拉一次远程仓库 2.工作区进行开发 3.将开发结果提交到本地版本库 git status查看时没有待处理的事件 4.拉取远程仓库(每一次要提交远程仓库前必 ...

  2. PAT(B) 1094 谷歌的招聘(Java)

    题目链接:1094 谷歌的招聘 (20 point(s)) 题目描述 2004 年 7 月,谷歌在硅谷的 101 号公路边竖立了一块巨大的广告牌(如下图)用于招聘.内容超级简单,就是一个以 .com ...

  3. Java同C#的语法不同之处

    Java同C#的语法不同之处... [注:转载而来但原出处不详:若是您原创请联系我]1,命名空间与包 C#为了把实现相似功能的类组织在一起,引入了命名空间的概念(namespace) Java中与此对 ...

  4. Generator 实现

    Generator 是 ES6 中新增的语法,和 Promise 一样,都可以用来异步编程 // 使用 * 表示这是一个 Generator 函数 // 内部可以通过 yield 暂停代码 // 通过 ...

  5. 如何将SolidWorks文件另存为.obj文件及如何打开.obj格式文件

    原网站:http://fans.solidworks.com.cn/forum.php?mod=viewthread&tid=40238) OBJ文件是Alias Wavefront公司为它的 ...

  6. 字符串replace的理解和练习和配合正则表达式的使用

    下面代码展示了(demo地址 https://codepen.io/peach_/pen/jONJjRY): 1.字符串replace的理解和练习和配合正则表达式的使用, 2.正则表达式学习 3.通过 ...

  7. springboot接收date类型参数

    springboot接收日期类型参数,实现自动转换. 1. 当请求类型为json,date类型字段为 json 字段时,可以使用如下两种方法 1.1. 当前参数加两个注解(有些文章说接收只需要加 @D ...

  8. JavaScript Array vs new Array区别

    规范说明 When Array is called as a function rather than as a constructor, it creates and initialises a n ...

  9. laravel登录后其他页面拿不到登录信息

    登录本来是用表单的,我自作聪明的使用ajax提交 public function login(Request $request){ $data = $request->input(); $dat ...

  10. Linux:入门基础

    一.操作Linux必知必会基础知识 二.在Linux命令下查看命令帮助信息 三.Linux挂机重启注销命令 四.Linux显示系统IP地址 一.操作Linux必知必会基础知识 1.Linux命令行组成 ...