全局变量和局部变量

局部里面定义 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. poj 3061 题解(尺取法|二分

    题意 $ T $ 组数据,每组数据给一个长度 $ N $ 的序列,要求一段连续的子序列的和大于 $ S $,问子序列最小长度为多少. 输入样例 2 10 15 5 1 3 5 10 7 4 9 2 8 ...

  2. oracle安装内核参数设置

    安装oracle内核参数说明及设置 kernel.shmmax 说明: Linux进程可以分配的单独共享内存段的最大值(byte) 64位的linux操作系统,设置应该大于SGA_MAX_TARGET ...

  3. win10 idea springboot上传镜像到远程docker服务器

    1. 开启2375端口,供外部访问docker vim /usr/lib/systemd/system/docker.service 修改ExecStart为下面一行内容 #ExecStart=/us ...

  4. SpinWait 第二篇

    SpinWait 提供了两个方法和两个只读属性. 方法: SpinWait.Reset() : 重置自旋计数器,将计数器置 0.效果就好像没调用过SpinOnce一样.SpinWait.Once() ...

  5. 2..net core 和.net framework 版本

    同一台机器上可以安装多个版本的.net core runtime.比如: 每个.net core项目都可以指定自己所用的版本,所以改变某个项目的target version不会影响到其他的.安装新的r ...

  6. Spark机器学习基础-监督学习

    监督学习 0.线性回归(加L1.L2正则化) from __future__ import print_function from pyspark.ml.regression import Linea ...

  7. activemq BytesMessage || TextMessage

    需求:使用 python 程序向 activemq 的主题推送数据,默认推送的数据类型是 BytesMessage,java 程序那边接收较为麻烦,改为推送 TextMessage 类型的数据 解决方 ...

  8. iOS自动布局学习(UIView+AutoLayout)

    自动布局虽然在iOS6的时候已经推出,不过由于各个原因并没有被开发组广泛使用.一方面是大家的app支持版本都是低于iOS6的,另一方面来说是Xcode支持木有现在这么好.以前由于iPhone设备相对固 ...

  9. springboot学习入门简易版二---springboot2.0项目创建

    2 springboot项目创建(5) 环境要求:jdk1.8+ 项目结构: 2.1创建maven工程 Group id :com.springbootdemo Artifact id: spring ...

  10. 【DRF框架】序列化组件——ModelSerializer

    ModelSerializer 1.ModelSerializer类似于ModelForm 2.根据模型自动生成一组字段 3.自带实现了.update()以及.create()方法 ModelSeri ...