1.4 函数的变量
局部变量和全局变量- Python中的任何变量都有特定的作用域
- 在函数中定义的变量一般只能在该函数内部使用,这些只能在程序的特定部分使用的变量我们称之为局部变量
- 在一个文件顶部定义的变量可以供文件中的任何函数调用,这些可以为整个程序所使用的变量称为全局变量
global语句
- global 变量名强制声明为全局变量 在函数内部声明全局变量 只要函数被调用,全局变量就会在函数外任何地方×××
#!/usr/bin/python
x='global var'def fun():global x 声明全局变量x=1global yy=2fun() 调用函数print x,y 调用函数后,全局变量才生效
~ locals() 返回的是脚本执行过程中有哪些变量,如果写在函数里,是显示函数内定义的变量,如果写在函数外,则是显示脚本中所有的变量1.5 函数的返回值
函数中的print只是用于测试,调用函数主要是使用函数的返回值,函数被调用后才会有返回值•函数返回值- 函数被调用后会返回一个指定的值
- 函数调用后默认返回None
- return 返回值
- 返回值可以是任意类型
- return执行后,函数终止
- return与print区别
如果函数没有返回值,默认返回none
def fun():print 'hello world'print fun()调用后返回hello worldNone 没有return语句,默认返回none如果加上返回值
def fun():print 'hello world'return 1print fun()则返回1 返回值可以是任何类型举例2.
#!/usr/bin/pythonimport sys
import osdef isNum(s):
for i in s:if i not in '-0123456789':return False 如果不是数字 返回false退出return True 否则返回truefor i in os.listdir('/proc'):if isNum(i): 判断如果返回trueprint i字符串方法 isdigit() 返回布尔值True False 如果所有的字符是数字返回True,如果有一个是字符,则返回False
举例
import sysimport osdef isNum(s):
if s.isdigit(): 字符串调用isdigit()方法 这里返回Truereturn True return Falsefor i in os.listdir('/proc'):if isNum(i):print i
精彩评论