python 函数调用
# 如果不主动调用函数,函数是不会执行的
def say_hello():
print 'hello1'
print 'hello2'
print 'hello3'
# 函数的调用
say_hello()
def sum_2_sum():
"""对两个数字的求和"""
num1 = 20
num2 = 20
result = num1 + num2
print '%d + %d = %d' %(num1,num2,result)
"""
函数参数的使用
在函数名后面的小括号内填写 参数
多个参数之间使用 , 分隔
"""
# 定义函数时的变量,叫形参 形参可以任意起名字
def sum_2_sum(num1,num2):
"""
:param num2:
:return:
result = num1 + num2
print '%d + %d = %d' %(num1,num2,result)
# 在调用函数时传递得参数称为实参(真实的数据信息)
sum_2_sum(5,20)
########函数形参之四大参数###########
形参:位置参数 默认参数 可变参数 关键字参数
位置参数:形参和实参个数必须保持一致
def getInfo(name,age):
print name,age
getInfo(age=12,name='westos')
def mypow(x,y=2):
"""
求x的y次方,y的值默认为2
:param x:
:param y:
:return:
"""
print x**y
mypow(4)
默认形参可以改变
mypow(4,3)
def mysum(*agrs):
"""
*args:是可变参数
args:是元组类型数据
args:名字可变(因为是形参 名字可变)
:param agrs:
:return:
"""
print agrs
sum = 0
for item in agrs:
sum += item
print sum
nums = [1,2,3,4,66,78]
nums1 =(1,2,3,4,5)
nums2 = {1,2,3}
*nums:解包
mysum(*nums2)
#mysum(1,2,3,4,5)
def getStuInfo(name,age,**kwargs):
"""
**kwargs:是一个字典;可以传递任意多的key-value对
:param name:
:param age:
:param kwargs:
:return:
"""
print name,age
print kwargs
getStuInfo('westos',18,hobbies=['code','running'],gender ='female')
局部变量:在函数内部定义的普通变量,只在函数内部作用,函数执行结束
变量会自动删除
a = 1
def fun():
global a # 声明a为全局变量
a = 5
print 'inside:',id(a)
fun()
print a
print id(a)
########函数的返回值########
"""
返回值:函数运算的结果,还需要进一步操作时,给一个返回值
return用来返回函数执行结果的,如果没有返回值,默认为None
python可以间接返回多个值(返回了一个元组)
一旦遇到return,函数执行结束,后面的代码不会执行
"""
def mypow(x, y=2):
return x ** y, x + y
print 'hello'
# pass
a,b = mypow(3)
print a,b
def test(num):
print '在函数内部%d对应的内存地址是%d' %(num,id(num))
result = 'hello'
print '函数要返回的数据的内存地址是 %d' %id(result)
return result
print 'a变量保存数据的内存地址是%d' %id(a)
print '%s 的内存地址是 %d' %(r,id(r))
1.
s = '51 5000 10000'
li = [ ]
for item in s.split():
li.append(int(item))
k,a,b = li
k, a, b = [int(item) for item in s.split()]
print k,a,b
li = []
for i in range(1, 8):
li.append(i ** 2)
print li
[experssion for i in 序列 if...]
"""
##########字典生成式#########
1.假设有20个学生,学分在60~100之间,筛选出成绩在90分以上的学生
import random
for i in range(20):
name = 'westos' + str(i)
score = random.randint(60,100)
stuInfo[name] = score
# stuInfo['westos'+str(i)] = random.randint(60,100)
hightscore = {}
for name,score in stuInfo.items():
if score > 90:
hightscore[name] = score
print hightscore
print {name:score for name,score in stuInfo.items() if score >90}
2.将字典中的key值和value值调换
d = {'a':'apple','b':'bob','c':'cat'}
# print {v:k for k,v in d.items()}
print {k:k.upper()for k,v in d.items()}
d1 = {'A':10,'b':3,'a':5,'B':8,'d':1}
print {k.lower():d1.get(k.upper(),0)+d1.get(k.lower(),0)for k,v in d1.items
"在不改变原函数的基础上,给函数增加功能"
把一个函数当作参数,返回一个替代版的函数
本质上:返回函数的函数
def desc(fun):
def add_info():
print '快乐'
fun()
print '欢迎'
return add_info
@desc
def login():
# print '快乐...'
print 'login....'
# print '欢迎...'
def logout():
print 'logout....'
def savemoney():
print '存钱...'
def transferMoney():
print '转账....'
logout()
savemoney()
transferMoney()
转载于:https://www.cnblogs.com/zhengyipengyou/p/9573570.html
python 函数调用相关推荐
- python函数调用的三种方式_python函数调用的四种方式
原标题:python函数调用的四种方式 第一种:参数按顺序从第一个参数往后排#标准调用 运行结果: 第二种:#关键字调用 注意:关键调用从哪开始的,从哪以后都必须使用关键字调用除了'*'收集参数.不能 ...
- python函数调用的例子_实例讲解Python中函数的调用与定义
调用函数: #!/usr/bin/env python3 # -*- coding: utf-8 -*- # 函数调用 >>> abs(100) 100 >>> a ...
- 简述python函数调用过程_python函数定义和调用过程详解
我们可以创建一个函数来列出费氏数列 >>> def fib(n): # write Fibonacci series up to n ... """Pr ...
- python函数调用位置_python函数定义,调用,传参,位置参数及关键字参数,返回值
使用函数是真正开始编程的第一步,函数y=f(x)我们并不陌生,对x进行一顿操作得到一个值y.给不同的x,进行相同的操作,得到相应的y值. 程序层面函数是执行特定任务的一段代码,将一段代码定义成函数并为 ...
- python函数调用时的实参和形参之间传递_python 函数(实参与形参、传递参数)...
函数 什么是函数?函数是带名字的代码块,用于完成具体的工作.写出一个函数后,就可以一直调用. 定义函数,函数的基本组成: 1.1 向函数传递参数 向函数中传递任意参数,这样打印出的结果就可以根据自己的 ...
- python函数调用位置_Python: 浅谈函数局部变量快在哪
前言 这两天在 CodeReview 时,看到这样的代码 # 伪代码 import somelib class A(object): def load_project(self): self.proj ...
- python函数调用语句_Python函数定义和函数调用
原标题:Python函数定义和函数调用 我们已经使用了一些python内建函数,比如print().input().str()等等. 也使用了一些python自带模块的一些库函数,比如math模块的a ...
- python函数调用的一般形式_Python的函数的定义与使用示例
Python培训分享函数的定义与使用示例,结合实例形式分析了Python函数的定义.参数.变量作用域.返回值等相关概念与使用技巧. Python定义函数使用def关键字,一般格式如下: def 函数名 ...
- python函数调用外部变量_Python基础
python基础语法 n 换行:t 制表符;代码分隔 ''' '''多行文本赋值 :多行语句写在一行(不符合PEP8规范) 关键字 python 自带的好用的函数 注:reduce() 函数在 pyt ...
- 函数调用关系python_追踪python函数调用关系
在我们执行拥有复杂函数调用关系的一段python程序时,我们希望能够清楚的知道他们之间的调用关系以及在调用过程中传入的参数信息和返回值,这些信息对于我们分析程序的行为和bug会很有帮助. 我希望能实现 ...
最新文章
- VTK:可视化之QuadraticSurface
- 带有Hibernate OGM的NoSQL –第一部分:持久化您的第一个实体
- HTML5与搜索引擎优化[转载]
- iOS25个性能优化,和内存优化
- Spring中的@Value注解详解
- thread.sleep是让哪个线程休眠_java多线程必看:java线程的生命周期
- 常用jar包_几个解决 Maven Jar 包冲突的小技巧.
- JDK8新特性(十二)之并行的Stream流
- 自我监督学习和无监督学习_弱和自我监督的学习-第2部分
- android好用的窗口小工具下载,股票窗口小工具,安卓股票小插件
- Shell设置环境变量
- 程序员是不是青春饭?年纪大了何去何从
- 巴菲特致股东的一封信:1999年
- 沙耶的玩偶(doll)
- 不用Bootcamp双系统,在Mac上跑Windows是啥感觉?
- 电脑任务栏卡死的解决方法
- Lens5 指南:专为Kubernetes人员设计的IDE
- 电视机未来会成为家庭交互中心?
- [Noi1999]钉子和小球
- CQYZ Online Judge P2995 萨鲁曼的大军(c++)
热门文章
- 机器学习实战2--逻辑回归
- 赛普拉斯代理商与芯片ic是如何收购成功的
- 设计模式之抽象工厂(C++)
- 低迷时,谁在坚持CSR
- 计算机芯片和量子力学,半导体“革命者” 电脑芯片将多一个选择:量子芯片...
- 国民技术 N32G031F8S7 PWM+DMA 控制 WS2812
- uniapp系列-uni.getAppBaseInfo() versionCode appVersion 值不对应该怎么解决?
- java安装证书_Java SSL证书的安装
- Idea Debug调试指南笔记01
- zabbix 监控topsec firewall