IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python(函数) -> 正文阅读

[Python知识库]python(函数)

#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,否则返回False
    if 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,否则返回False
    if 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 c
    else:
        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=1
    while 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/3
    return avg

result=avgNum(1,2,3)   # 外部变量接收函数返回的结果
print('三个数的平均值是: %f'%result)
print('三个数的平均值是: %f'%avgNum(1,2,3))

#coding=utf-8
# globalvar

a=100   # a是globalvar文件的全局变量

def test():
    print(a)

test()

def test2():
    a=200     # 函数内部的变量,局部变量
    print(a)

test2()

print('全局变量a=%d'%a)

def test3():
    global a
    a=300     # 函数内部的变量,局部变量;使局部变量变成全局变量,使用关键字global声明,再赋值
    print(a)

print(a)
test3()
print('全局变量a=%d'%a)


#
i=[1]   # i是空的列表
# 函数循环操作将循环的数字添加到列表
def test4():
    global i
    for 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//b
    yu = a%b
    return shang,yu

a=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+a

a=1
selfAdd(a)
print(a)

#coding=utf-8
def jiechen(n):
    i=1
    result=1
    while i<=n:
        result*=i
        i+=1
    return result

print(jiechen(5))

# 5的阶乘=4的阶乘*5 => FN=N*F(N-1)
def digui(n):
    result=1
    if n>=2:
        result=n*digui(n-1)
    return result

print(digui(5))

# 使用递归计算1-100之间的和
def diguijia(m):
    result=1
    if m>=2:
        result=diguijia(m-1)+m
    return result
print(diguijia(100))

# 假如工资按天发放,第一天发0.01块,第二天是第一天的两倍,以此类推,第30天的工资是多少
def gongzi(n):           # fn=0.01*2^(n-1)
    result=0.01
    if n>=2:
        result=2*gongzi(n-1)
    return result
print(gongzi(30))

# 斐波那契数列
# 兔子:一对兔子一个月后成熟,每个月生一对兔子,问12个月后有多少对兔子
# 1        2        3        4       5       6
# 1        1        2        3       5       8

def fbnq(n):
    result=1
    if n>2:
        result=fbnq(n-1)+fbnq(n-2)
    return result

print(fbnq(12))

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-03-10 22:27:16  更:2022-03-10 22:27:49 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 21:38:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码