1.局部变量与全局变量

 #!/usr/bin/env python
# -*- coding:utf-8 -*- # name='lhf'
# def change_name():
# global name
# name='帅了一比'
# print('change_name',name)
#
#
# change_name()
# print(name) # name='lhf'
#
# def change_name():
# name1='帅了一比'
# name2='帅了一比'
# name3='帅了一比'
# print('change_name',name)
#
# globals # NAME = "杠娘"
#
# def yangjian():
# global NAME
# NAME = "小东北"
# print('我要搞', NAME)
#
# def qupengfei():
# NAME = "基"
# print('我要搞', NAME)
#
# yangjian()
# qupengfei() # NAME = "产品经理"
#
# def yangjian():
# # NAME = "史正文"
# global NAME # 已经声明,NAME就是全局的的那个变量
# print('我要搞', NAME)
# NAME = "小东北" # 修改 全局的变量
# print('我要搞', NAME)
#
# def qupengfei():
# NAME = "基"
# print('我要搞', NAME) # 如果函数的内容无global关键字,
# - 有声明局部变量
# NAME = ["产品经理","廖波湿"]
# def qupengfei():
# NAME = "自己"
# print('我要搞', NAME)
# qupengfei()
# - 无声明局部变量
# NAME = ["产品经理","廖波湿"]
# def qupengfei():
# NAME.append('XXOO')
# print('我要搞', NAME)
# qupengfei() # 如果函数的内容有global关键字
# - 有声明局部变量
# NAME = ["产品经理","廖波湿"]
# def qupengfei():
# global NAME
# NAME = "自己"
# print('我要搞', NAME)
# qupengfei()
# 错误示例
# NAME = ["产品经理","廖波湿"]
# def qupengfei():
# NAME = "自己"
# global NAME
# print('我要搞', NAME)
# qupengfei()
# - 无声明局部变量
# NAME = ["产品经理","廖波湿"]
# def qupengfei():
# global NAME
# NAME = ["阿毛"]
# NAME.append('XXOO')
# print('我要搞', NAME)
# qupengfei() ######## 全局变量变量名大写
######## 局部变量变量名小写 # 优先读取局部变量,能读取全局变量,无法对全局变量重新赋值 NAME=“fff”,
# 但是对于可变类型,可以对内部元素进行操作
# 如果函数中有global关键字,变量本质上就是全局的那个变量,可读取可赋值 NAME=“fff”
# qupengfei()
# yangjian() # NAME = ["产品经理","廖波湿"]
#
# def yangjian():
# # NAME = "史正文"
# global NAME # 已经声明,NAME就是全局的的那个变量
# print('我要搞', NAME)
# NAME = "小东北" # 修改 全局的变量
# print('我要搞', NAME)
#
# def qupengfei():
# # NAME = "aS"
# NAME.append('天扎龙')
# print('我要搞', NAME)
#
# yangjian() # NAME = ["产品经理","廖波湿"]
# def qupengfei():
# name = "自己"
# global NAME
# print('我要搞', NAME)
# qupengfei() # NAME = '海风'
#
# def huangwei():
# name = "黄伟"
# print(name)
# def liuyang():
# name = "刘洋"
# print(name)
# def nulige():
# name = '沪指花'
# print(name)
# print(name)
# nulige()
# liuyang()
# print(name)
#
# huangwei() # 黄伟 刘洋 刘洋 沪指花 黄伟 # name = "刚娘"
#
# def weihou():
# name = "陈卓"
# def weiweihou():
# nonlocal name # nonlocal,指定上一级变量,如果没有就继续往上直到找到为止
# name = "冷静"
#
# weiweihou()
# print(name)
#
# print(name)
# weihou()
# print(name)
# 刚娘
# 冷静
# 刚娘

2.前向引用

 #!/usr/bin/env python
# -*- coding:utf-8 -*- # def foo():
# print('from foo')
# bar()
#
# foo() # def bar():
# print('from bar')
# def foo():
# print('from foo')
# bar()
#
# foo() # def foo():
# print('from foo')
# bar()
#
# def bar():
# print('from bar')
# foo() # def foo():
# print('from foo')
# bar()
#
# foo()
#
# def bar():
# print('from bar')

3.测试

 #!/usr/bin/env python
# -*- coding:utf-8 -*-
name='海风'
def huangwei():
name = "黄伟"
print(name)
def liuyang():
name = "刘洋"
print(name)
def nulige():
name = '炉指花'
print(name)
print(name)
nulige()
liuyang()
print(name) print(name)
huangwei()
print(name) # 海风 黄伟 刘洋 刘洋 炉指花 黄伟 海风
 #!/usr/bin/env python
# -*- coding:utf-8 -*-
def calc(n):
print(n)
if int(n / 2) == 0: # 10/2 5/2 2/2
return n
res=calc(int(n / 2))
return res calc(10)# 10 5 2 1

4.递归

 #!/usr/bin/env python
# -*- coding:utf-8 -*-
# def calc(n):
# print(n)
# if int(n / 2) == 0:
# return n
# res=calc(int(n / 2))
# return res
#
#
# res=calc(10)
# print(res) # while True:
# print(10) # import time
#
# person_list=['alex','wupeiqi','linhaifeng','zsc']
# def ask_way(person_list):
# print('-'*60)
# if len(person_list) == 0:
# return '根本没人知道'
# person=person_list.pop(0)
# if person == 'linhaifeng':
# return '%s说:我知道,老男孩就在沙河汇德商厦,下地铁就是' %person
#
# print('hi 美男[%s],敢问路在何方' % person)
# print('%s回答道:我不知道,但念你慧眼识猪,你等着,我帮你问问%s...' % (person, person_list))
# time.sleep(1)
# res=ask_way(person_list)
#
#
# print('%s问的结果是: %res' %(person,res))
# return res
#
# res=ask_way(person_list)
# print(res)
# 我 来英 杨建 是征文
# res等沙河 res等沙河 res等 沙河 return ‘沙河’
# print printres import time
res=time.sleep(10)
print('----------->')

day15-python之变量和递归的更多相关文章

  1. day15 python lambda函数 递归函数 二分法

    day15 python   一.匿名函数 lambda     1.lambda函数 def func(n):                #普通函数, 功能比较简单, 当函数多的时候, 起名也不 ...

  2. 配置python环境变量(转)

    默认情况下,在windows下安装python之后,系统并不会自动添加相应的环境变量.此时不能在命令行直接使用python命令. 1.首先需要在系统中注册python环境变量:假设python的安装路 ...

  3. python学习 变量的操作 与 基本数据类型

    一变量(本文使用python3.5): #变量:是计算机内存中的一块区域,变量可以存储规定范围内的值,变量可以改变#在python中变量是计算机内存中数据的引用 python的变量没有明显的类型,具体 ...

  4. python的变量传递

    python中变量都被视为对象的引用.python函数调用传递参数的时候,不允许程序员选择传值还是传引用,python参数传递采用的都是“传对象引用”的方式.     这种方式相当于传值和传引用的结合 ...

  5. Python中变量的作用域(variable scope)

    http://www.crifan.com/summary_python_variable_effective_scope/ 解释python中变量的作用域 示例: 1.代码版 #!/usr/bin/ ...

  6. Windows下python环境变量配置

    默认情况下,在windows下安装python之后,系统并不会自动添加相应的环境变量.此时不能在命令行直接使用python命令. 1. 首先需要在系统中注册python环境变量:假设python的安装 ...

  7. windows7下python环境变量配置

    默认情况下,在windows下安装python之后,系统并不会自动添加相应的环境变量.此时不能在命令行或cmd里直接使用python命令. 1. 首先需要在系统中注册python环境变量:假设pyth ...

  8. FAQ:Python环境变量配置

    Python安装安装成,需要配置环境变量: 默认情况下,在windows下安装python之后,系统并不会自动添加相应的环境变量.此时不能在命令行直接使用python命令. 1. 首先需要在系统中注册 ...

  9. python基础(2):python的变量和常量

    今天看看python的变量和常量:python3 C:\test.py 首先先说一下解释器执行Python的过程: 1. 启动python解释器(内存中) 2. 将C:\test.py内容从硬盘读入内 ...

  10. python __name__ 变量的含义

    python __name__ 变量的含义 if __name__ == '__main__': tf.app.run() 当python读入程序时,会初始化一些系统变量.如果当前程序是主程序,__n ...

随机推荐

  1. 鸟哥私房菜基础篇:Linux 磁碟与档案系统管理习题

    猫宁!!! 参考链接:http://linux.vbird.org/linux_basic/0230filesystem.php 鸟哥是为中国信息技术发展做出巨大贡献的人. 1-我们常常说,开机的时候 ...

  2. stylus基础教程,stylus实例教程,stylus语法总结

    stylus特点富于表现力.具有健壮性.功能丰富.动态编码不需要写CSS的冒号.分号.大括号和LESS.SASS功能类似,会这些的入手很快stylus特点安装使用stylus语法(一)选择器(二)变量 ...

  3. 一个因xdata声明引起的隐含错误

    我们知道一般增强型c51自身的RAM只有128BYTES,根本不够用,所以一般在定义全局变量,静态变量时都要用XDATA作为关键字修饰数据的的存储类型.但要注意的是,定义和声明一定要一致,不然出现错误 ...

  4. python_11(网络编程)

    第1章 ucp协议 1.1 特性 1.2 缺陷 1.3 UDP协议实时通信 第2章 socket的更多方法 2.1 面向锁的套接字方法 2.1.1 blocking设置非阻塞 2.1.2 Blocki ...

  5. python_函数嵌套(4)

    第1章 名称空间 1.1 定义 1.2 变量运行流程 1.3 临时名称空间 1.4 python三种名称空间 第2章 作用域 2.1 作用域分类 2.2 加载顺序 2.3 取值顺序 函数嵌套 2.4 ...

  6. 浅谈 echarts 用法

    对于服务型的公司来说,需要了解用户的使用趋势,来帮助分析市场的走向,所以说统计在一个管理后台中是必不可少的. 会用到echarts插件 ,其官网网址 http://echarts.baidu.com/ ...

  7. Log4net系列二:Log4net邮件日志以及授权码

    Log4net邮件发送 上篇文章我们主要介绍Log4net生成文本格式,本篇文章主要配置邮箱发送.关于项目的引用,搭建我们就不在描述,如果不太清楚,请看上篇文章, 老规矩,我们现在配置文件中添加一个a ...

  8. Some Python Tricks

    python 的包管理很不好用,理解费力,故偷懒,模块仍按文件布局,写一个合并脚本将各个模块合并输出到一个脚本文件,分别管理,合并输出,回避了加载模块的问题 f-format 仅在python 3.6 ...

  9. codevs 2905 足球晋级

    时间限制: 1 s  空间限制: 64000 KB  题目等级 : 黄金 Gold   题目描述 Description A市举行了一场足球比赛 一共有4n支队伍参加,分成n个小组(每小组4支队伍)进 ...

  10. SAP CRM调查问卷的评分和图表显示功能介绍

    SAP CRM里我们使用事务码CRM_SURVEY_SUITE创建一个调查问卷(Survey): 其中调查问卷的问题和答案均可分配权值(Rate),最后该问卷总的分数等于每个问题的权值乘以客户选择答案 ...