Python函数中的变量和函数返回值

1.函数的变量

局部变量和全局变量:

Python中的任何变量都有特定的作用域

在函数中定义的变量一般只能在该函数内部使用,这些只能在程序的特定部分使用的变量我们称之为局部变量

在一个文件顶部定义的变量可以供文件中的任何函数调用,这些可以为整个程序所使用的变量称为全局变量。

def fun():

x=100

print x

fun()

x = 100

def fun():

global x   //声明

x +=1

print x

fun()

print x

外部变量被改:

x = 100

def fun():

global x   //声明

x +=1

print x

fun()

print x

内部变量外部也可用:

x = 100

def fun():

global x

x +=1

global y

y = 1

print x

fun()

print x

print y

x = 100

def fun():

x = 1

y = 1

print locals()

fun()

print locals()

{'y': 1, 'x': 1}

统计程序中的变量,返回的是个字典

{'__builtins__': <module '__builtin__' (built-in)>, '__file__': 'D:/PycharmProjects/untitled/python/2018.01.03/bianliang.py', '__package__': None, 'x': 100, 'fun': <function fun at 0x02716830>, '__name__': '__main__', '__doc__': None}

2. 函数的返回值

函数返回值:

函数被调用后会返回一个指定的值

函数调用后默认返回None

return返回值

返回值可骒任意类型

return执行后,函数终止

return与print区别

def fun():

print 'hello world'

return 'ok'

print 123

print fun()

hello world

123

None

#/usr/bin/env python

# -*- coding:utf-8 -*-

# @time   :2018/1/2 21:06

# @Author :FengXiaoqing

# @file   :printPID.py

import sys

import os

def isNum(s):

for i in s:

if i not  in '0123456789':

return False

return True

for i in os.listdir("/proc"):

if isNum(i):

print i

import sys

import os

def isNum(s):

if s.isdigit():

return True

return False

for i in os.listdir("/proc"):

if isNum(i):

print i

或:

#/usr/bin/env python

# -*- coding:utf-8 -*-

# @time   :2018/1/2 21:06

# @Author :FengXiaoqing

# @file   :printPID.py

import sys

import os

def isNum(s):

if s.isdigit():

return True

else:

return False

for i in os.listdir("/proc"):

if isNum(i):

print i

习题

1. 设计一个程序,从终端接收10个数字,并使用自己编写的排序函数,对10个数字排序后输出.

2. 设计一个函数,接收一个英文单词,从文件中查询该单词的汉语意思并返回.

原文地址:http://blog.51cto.com/fengyunshan911/2057207

时间: 2024-10-20 13:42:14

Python函数中的变量和函数返回值的相关文章

Python函数中的变量和函数返回值的使用实例

1.函数的变量 局部变量和全局变量: Python中的任何变量都有特定的作用域 在函数中定义的变量一般只能在该函数内部使用,这些只能在程序的特定部分使用的变量我们称之为局部变量 在一个文件顶部定义的变量可以供文件中的任何函数调用,这些可以为整个程序所使用的变量称为全局变量. def fun(): x=100 print x fun() x = 100 def fun(): global x //声明 x +=1 print x fun() print x 外部变量被改: x = 100 def

37 py为什么要使用函数函数中添加文本注释 没有返回值的函数

第一课:为什么要使用函数 首先 要知道 本课程的主要讲解的内容为: 1.为什么要创建函数 2.***函数的概念是:将一段可能别重用的代码封账到一个代码段里面,然后通过函数的参数 ,控制函数的动态部分.// 如何来定义python中的函数和使用函数 *** 3.如何创建一个函数 4.如何为函数添加文档注释,如何获取函数的文档注释 5.函数如何返回一个值 6.改变函数的参数值 7.关键字参数与参数默认值 8.可变参数 9.如何将序列中的元素单独作为参数值传递给函数 10.函数中的作用域 11.递归函

(转)函数中使用 ajax 异步 同步 返回值错误 主函数显示返回值总是undefined -- ajax使用总结

如图检测到函数返回值总是a jQuery ajax 得到返回值 方案1:通过js回调函数获取返回值 方案2: 添加代码: async: false, 1.ajax默认是异步调用的,所以得到的返回值是空值,要得到值必须改成同步:async: false,//同步. 2.必须定义一个全局变量 var result = ""来保存返回值.否则得到的是undefined function GetReturnValue(url, jsonText) { var result = "&q

Ajax - 在函数中使用Ajax怎么使用返回值

要使用异步操作:  async : false,//取消异步操作 //添加节点函数 function InsertNode(nodenum, nodename, type) { var returnvalue; $.ajax({ async : false,//取消异步操作 type: 'post', url: 'UpdateNodes.ashx', data: 'nodenum=' + nodenum + '&type=' + type + '&nodename=' + nodename

JavaScript 中对变量和函数声明的提前示例

如题所示,看下面的示例(可以使用Chrome浏览器,然后F12/或者右键,审查元素.调出开发者工具,进入控制台console输入)(使用技巧: 控制台输入时Shift+Enter可以中途代码换行) var name = "xiaoming"; (function(){ var name = name || "小张"; console.info(name); })();// 小张 (function(){ name = name || "小张";

以window作为Global目标函数效果域中的变量的函数

匿名函数与闭包运用函数表达式界说函数时,形如varfunctionNam=functionarg0,agr1{}即为匿名函数,由于function关键词后边没有标识符.闭包是指有权拜访另一个函数效果域中的变量的函数.经过在一个函数内创建另一个函数,可以创建闭包.?javascript中,只要办法是有效果域的办法中声明的变量在外部是无法拜访的2.BOMwindow目标表明浏览器的一个实例.既是经过javascript拜访浏览器窗口的一个接口,又是? ECMA Script规则的Global目标.

如何判断函数中的变量是全局变量还是局部变量

1如果在函数中,变量前加了global,很显然该变量是全局变量 2如果函数中的一个变量和全局变量的名称相同,但是函数没有给这个变量赋值,那么这个变量是全局变量 3如果函数中的一个变量和全局变量的名称相同,但是函数给该变量赋值了,这个变量就是局部变量 4如果函数中的变量没有与之同名的全局变量,那么该变量显然是一个局部变量 (看起来有点傻,主要注意第二条和第三条,尽量函数中不用全局变量,因为不好调试)

c++ 类与函数中static变量初始化问题(转)

首先static变量只有一次初始化,不管在类中还是在函数中..有这样一个函数: 1 void Foo() 2 { 3 static int a=3; // initialize 4 std::cout << a; 5 a++; 6 } 里的static int a=3只执行了一次.在main中调用Foo()两次,结果为34.将上面的函数改为 1 void Foo() 2 { 3 static int a; 4 a=3; // not initialize 5 std::cout <<

C++面试题1:构造函数和虚构函数中能否调用虚函数?

C++面试题1:构造函数和虚构函数中能否调用虚函数? 构造函数跟虚构函数里面都可以调用虚函数,编译器不会报错. C++ primer中说到最好别用 由于类的构造次序是由基类到派生类,所以在构造函数中调用虚函数,虚函数是不会呈现出多态的 类的析构是从派生类到基类,当调用继承层次中某一层次的类的析构函数时意味着其派生类部分已经析构掉,所以也不会呈现多态 因此如果在基类中声明的纯虚函数并且在基类的析构函数中调用之,编译器会发生错误. class Base { public: Base() { Fuct