#coding=utf-8
# 声明函数# def printSomthing():
#     name=input('请输入姓名: ')
#     sex= input('请输入性别: ')
#     print('您的姓名是:%s 性别是: %s'%(name,sex))
#
# printSomthing()# 定义函数加减乘除
def jjcc(a,b,c):print(isinstance(b,int))  # isinstance  判断类型,如果类型一致则返回True,否则返回Falseif a == "+":print('b=%f c=%f 相加的结果是%s'%(b,c,(b+c)))elif a == "-":print('b=%f c=%f 相减的结果是%s' % (b, c, (b - c)))elif a == "*":print('b=%f c=%f 相乘的结果是%s' % (b, c, (b * c)))elif a == "/":print('b=%f c=%f 相除的结果是%s' % (b, c, (b / c)))else:print('参数不匹配,第一个参数请输入加减乘除符号')jjcc('*',9.12,8)jjcc(b=12,a='-',c=13)
# 形参:定义方法或函数时使用,实参:调用函数或者方法传递的具体值
print('----------------------参数在函数外部定义-------------------------')def jjcc():print(isinstance(b,int))  # isinstance  判断类型,如果类型一致则返回True,否则返回Falseif a == "+":print('b=%f c=%f 相加的结果是%s'%(b,c,(b+c)))elif a == "-":print('b=%f c=%f 相减的结果是%s' % (b, c, (b - c)))elif a == "*":print('b=%f c=%f 相乘的结果是%s' % (b, c, (b * c)))elif a == "/":print('b=%f c=%f 相除的结果是%s' % (b, c, (b / c)))else:print('参数不匹配,第一个参数请输入加减乘除符号')a='*'
b=13
c=12
jjcc()print('-----------------------------------------------------------------------')#coding=utf-8
#判断三个数大小: 只能两两比较,在与第三个数进行比较def maxNum(a,b,c):   # 返回三个数中最大的一个if c > max(a,b):return celse:return max(a,b)# print(maxNum(4,7,9))###########################
result='测试'
def concatName(a,b):result=a+b   # 保存函数的返回值# result 可以参与其他流程的运算printResult(result)   # 函数嵌套,使用保存函数的返回值return result#
def printResult(result):print(result)#concatName('丁丁','当当')# 函数分类: 4种
'''
无参数,无返回值
无参数,有返回值
有参数,无返回值
有参数,有返回值
'''# 写一个函数打印一条横线,另外一个函数打印自定义行数的横线
def printLine():print('-'*20)def printNumLine(n):i=1while i<=n:printLine()   #每循环一次打印一行横线i+=1#printNumLine(2)# 写一个函数求三个数的和
def sumNum(a,b,c):return a+b+c# 写一个函数求三个数的平均值
def avgNum(a,b,c):sum = sumNum(a,b,c)avg=sum/3return avgresult=avgNum(1,2,3)   # 外部变量接收函数返回的结果
print('三个数的平均值是: %f'%result)
print('三个数的平均值是: %f'%avgNum(1,2,3))#coding=utf-8
# globalvara=100   # a是globalvar文件的全局变量def test():print(a)test()def test2():a=200     # 函数内部的变量,局部变量print(a)test2()print('全局变量a=%d'%a)def test3():global aa=300     # 函数内部的变量,局部变量;使局部变量变成全局变量,使用关键字global声明,再赋值print(a)print(a)
test3()
print('全局变量a=%d'%a)#
i=[1]   # i是空的列表
# 函数循环操作将循环的数字添加到列表
def test4():global ifor j in range(1,5):i.append(j)test4()   # 变成列表
print(i)def test5(i):for j in i:print(j)
test5(i)# 返回多个值
def divid(a,b):shang=a//byu = a%breturn shang,yua=divid(13,5)   # 接收多个返回值,(2,3)多个返回值是元组,取元组数据需要对应的变量名字
print(a)   ##函数参数缺省/默认值
def printinfo(name, age=18):print('name: %s'%name)print('age: %d'%age)printinfo('嘉敏')
printinfo('嘉敏', 20)name='abc abc'
print(name.count('a'))# 不定长参数:少部分计算过程中无法确认参数个数,一般取值通过循环遍历
# args传递的参数要不是单个字符串或者数字,要么是元组
# kwargs 传递的参数要不指定key=value,要不指定字典
def bdc_fun(a,b,*args, **kwargs):for key,value in kwargs.items():print('参数对象名: %s 值: %s'%(key,value))bdc_fun(1,2,3,n=4,m=5)    # 调用的时候kwargs对应的参数传递必须是key=value格式
bdc_fun(1,2,3)
bdc_fun(1,2,*(3,4,5),**{"m":6, "n":7, "p":8})# python语言是引用传递(注意不是值传递)
a=1
b=a
print(id(a))
print(id(b))
a=2
print(id(a))
print(id(b))
print(a)
print(b)def selfAdd(a):print('自增')a=a+aa=1
selfAdd(a)
print(a)#coding=utf-8
def jiechen(n):i=1result=1while i<=n:result*=ii+=1return resultprint(jiechen(5))# 5的阶乘=4的阶乘*5 => FN=N*F(N-1)
def digui(n):result=1if n>=2:result=n*digui(n-1)return resultprint(digui(5))# 使用递归计算1-100之间的和
def diguijia(m):result=1if m>=2:result=diguijia(m-1)+mreturn result
print(diguijia(100))# 假如工资按天发放,第一天发0.01块,第二天是第一天的两倍,以此类推,第30天的工资是多少
def gongzi(n):           # fn=0.01*2^(n-1)result=0.01if n>=2:result=2*gongzi(n-1)return result
print(gongzi(30))# 斐波那契数列
# 兔子:一对兔子一个月后成熟,每个月生一对兔子,问12个月后有多少对兔子
# 1        2        3        4       5       6
# 1        1        2        3       5       8def fbnq(n):result=1if n>2:result=fbnq(n-1)+fbnq(n-2)return resultprint(fbnq(12))

python(函数)相关推荐

  1. Pass算子python 函数

    Pass算子python 函数 函数 • 函数是代码的一种组织形式 • 函数应该能完成一项特定的工作,而且一般一个函数只完成一项工作 • 有些语言,分函数和过程两个概念,通俗解释是,有返回结果的是函数 ...

  2. Python 函数的可变参数(*paramter与**paramter)的使用

    Python 函数的可变参数主要有 *paramter与**paramter 可变参数主要有 *paramter的作用 接受任意多个实际参数并放到一个元组中 def people(*people):f ...

  3. 【python教程入门学习】Python函数定义及传参方式详解(4种)

    这篇文章主要介绍了Python函数定义及传参方式详解(4种),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 一.函数初识 1.定 ...

  4. python系统提供构造函数传入参数_[ Python入门教程 ] Python函数定义和使用

    函数是一段可以重复多次调用的代码,通过输入的参数值,返回需要的结果.通过使用函数,可以提高代码的重复利用率.本文主要介绍Python函数的定义.调用和函数参数设置方法. 函数的定义 Python函数定 ...

  5. python函数第二次运行报错_Python学习笔记2-函数、高级特性

    函数 调用函数 要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数 >>> abs(100) 100 >>> abs(-20) 20 ...

  6. [教程]Python函数的参数

    Python函数的参数 位置参数.默认值参数.可变参数.关键字参数和命名关键字参数 1 函数结构 def 函数名(参数):函数体返回值 2 位置参数 略 3 默认值参数 略 4 可变参数 # 可变长度 ...

  7. python函数+定义+调用+多返回值+匿名函数+lambda+高级函数(reduce、map、filter)

    python函数+定义+调用+多返回值+匿名函数+lambda+高级函数(reduce.map.filter) Python 中函数的应用非常广泛,比如 input() .print().range( ...

  8. python函数参数*arg和**kwargs分别代表什么?

    python函数参数*arg和**kwargs分别代表什么? 注意: 注意:参数arg.*args.**kwargs三个参数的位置必须是一定的.必须是(arg,*args,**kwargs)这个顺序, ...

  9. python 函数 默认参数

    python 函数 默认参数 def add(a=1, b=2): # a,b设置默认参数c = a + breturn c c = add(a=2) # 如果不填,就是默认参数 print(c) 4

  10. Python的零基础超详细讲解(第十二天)-Python函数及使用

    基础篇往期文章: Python的零基础超详细讲解(第一天)-Python简介以及下载_编程简单学的博客-CSDN博客 Python的零基础超详细讲解(第二天)-Python的基础语法1_编程简单学的博 ...

最新文章

  1. 【C++标准库】并发
  2. 位运算及在java中的应用整理
  3. 意大利万岁??摘自网络
  4. 【网络知识】1. 路由器或网桥的2.4G和5G的Wi-Fi各自优缺点对比
  5. 文件字符流 编码判断
  6. 肝!十大 Python 机器学习库
  7. 学习笔记(05):Python网络编程并发编程-基于socket实现简单套接字通信
  8. 事业单位计算机技术岗工资,事业单位新入职的人员在管理岗位和技术岗位工资待遇是否有区别?...
  9. 交换机实现虚拟局域网
  10. php mysql group by_php – 如何在mysql查询中解决“不在GROUP BY中”错误
  11. 右键菜单显示项的可见度控制 c# 1614605595
  12. DeeCamp2019年笔试题A卷
  13. Spring容器的底层实现
  14. 绿茶软件测试自学,抖音7号心理测试在哪 7号心理测试小程序绿茶答案
  15. 计算机科学技术学报官网convex,计算机学报chin
  16. 中国智慧消防产业需求现状及十四五发展趋向分析报告2021-2027年版
  17. 【每日一题】一起冲击蓝桥杯吧——Day07【蓝桥真题一起练】
  18. java jimi_Java开源工具Jimi处理图片大小及格式转换
  19. python---合并两个excel表格内容
  20. Springboot启动后频繁打印错误日志 /null/swagger-ui.html解决方案

热门文章

  1. js replace方法替换变量
  2. 2018年9月13日英语学习
  3. 爬虫 58同城房价信息 高德的接口进行房价地图绘制
  4. 使用Mini-ImageNet训练分类网络
  5. 孙强:IT治理需六方结合
  6. Prophet安装教程
  7. Mysql去重查询(根据指定字段去重)
  8. Unity3D性能优化总结(转纳金网)
  9. Qt跨平台Linux5-使用DEFINES来实现条件编译
  10. 【踩坑】Ubuntu16.04下安装Tenda U6无线网卡驱动