1、函数的变量git
局部变量和全局变量:app
-Python中的任何变量都有特定的做用域函数
-在函数中定义的变量通常只能在该函数内部使用,这些只能在程序特定部分使用的变量咱们称之为局部变量。设计
-在一个文件顶部定义的变量能够供文件中的任何函数调用,这些能够为整个程序所使用的变量称为全局变量。排序
-若是想使用做用域以外的全局变量,则须要加global前缀。作用域
-locals()以字典的形式返回使用了那些环境变量。input
示例:it
不适用global函数内部没法改变外部函数test
x = 100 def test(): x = 1 y=5 print(' a= %d' % x,'y = %d' % y) test()
加global后。函数外部打印的x为1,说明函数内部改变了全局变量。变量
x = 100 def test(): global x x = 1 y=5 print(' a= %d' % x,'y = %d' % y) test() print('global:x=%d' % x)
使用locals()查看当前位置使用的全局变量
x = 100 def test(): global x x = 1 y=5 print(' a= %d' % x,'y = %d' % y) #打印当前位置使用的环境变量 print (locals()) test()
2、函数的返回值
函数返回值:
-函数调用后会返回一个指定的值
-函数调用后默认返回none
-return返回值
-返回值能够是任意类型
-return执行后,函数会终止
示例:
#函数的返回值 def fun(): print('hi~~') return #return后函数会终止,后面的内容不会再执行 print('abc')
#判断x是否为数字,若是不是数字返回tfalse,不然则返回true
def fun(x): #判断是否为数字,若是是数字返回True不然返回false if x.isdigit(): return True return False
3、练习题
1. 设计一个程序,从终端接收10个数字,并使用本身编写的排序函数,对10个数字排序后输出
def numSort(): list_num = [] for i in xrange(1,10): num = raw_input('pleas input number:') #输入判断是否为数字,若是非数字则跳出循环 if num.isdigit(): list_num.append(num) list_num.sort() print(list_num) else: print('error,please input nuber') break return list_num numSort()
2. 设计一个函数,接收一个英文单词,从文件中查询该单词的汉语意思并返回