函数入门

104 阅读3分钟

函数的参数

#位置参数
# def func(a,b,c):
#      print(a)
#      print(b)
#      print(c)
#
# func(1,2,3)

关键字参数

# def func(a,b,c):
#      print(a)
#      print(b)
#      print(c)
#
# func(10,c=30,b=20)  #位置参数必须放在关键字参数的前面

必备参数

# def func(a,b):
#      print(a+b)
#
# func(11,22)

默认参数

# def func(a,b,c=99):
#      print(a)
#      print(b)
#      print(c)
#
# func(33,55,66)

# def func(a,b,c=99):
#      print(a)
#      print(b)
#      print(c)
#
# func(33,55)
# print(1,end='asdf')
# print(2)

不定长参数 (*args **kwargs)

接收多传入的位置参数 以元组的形式保存

*args

# def func(a,b,c,*args):  #*args 约定俗成的变量名 是以元组的形式返回
#      print(a)
#      print(b)
#      print(c)
#      print(args) #接收多传入的位置参数,以元组的形式保存
#
# func(33,44,55,66,77,88)

**kwargs 接收多传入的关键字参数 以字典的形式保存

# def func(**kwargs):
#      print(kwargs) #字典类型
#
# func(a=1,b=2,c=3,d=4) #关键字参数
# func(**{'e':33,'h':44,'d':55})  #写法不一样

# def work(a,b,*args,c=99,**kwargs):
#      print(a)
#      print(b)
#      print(c)
#      print(args)
#
# work(1,2,3,4,5,6)  #c是实参 具体的值 位置参数必须放在关键字参数的前面

函数的多个返回值

def my_test2():
    a,b,c = (1,2,3)
    # print(a,b,c)
    # return a  #当函数中有多个return时,不会报错,但是只会执行第一个
    # return b  #后面的代码为什么不会被执行 return返回到函数调用处了
    # return c
    return a,b,c  #写在一起 但返回的类型为元组

values = my_test2()
print(values)
# a,b,c = values
# print(a,b,c)
# print(my_test2())

函数的返回值

# def num(a,b):  #命名时不要用已经存在的函数名
#     c = a + b
#     return c
#
# print(num(1,3))

定义一个函数 用于输出现在的温度 摄氏度

# temp = int(input('请输入现在的温度:'))
# def sheshidu():
#     print(temp)
#     return temp
#
# temp1 = sheshidu()

#定义一个函数 用于将现在的温度转成华氏度   摄氏度转华氏度 c = ( a - 32 ) / 1.8
# def huashidu(temp1):
#     result = (temp1 - 32) / 1.8
#     print(result)
#
# huashidu(temp1)

函数自定义

'''自定义了一个函数'''

# def print_info():
    #函数体
    # '''
    # 用来打印个人信息的
    # :return: 返回到函数的调用处
    # '''
    # info = '我叫橘子今年20岁'
    # print(info,'123')
    # # return info
    # pass

'''怎么去使用这个函数 函数的调用 函数名()'''

# info = print_info()
# print(info)
# # print_info()
# print(print_info())  #None 我并没有返回东西

print()

input()

len()

max()

print(len('123456')) #’123456‘函数的参数

用函数实现两个数进行相加

# num1 = int(input('请输入你的第一个数:'))
# num2 = int(input('请输入你的第二个数:'))
#
# def num(num1,nmu2): #形式参数 (临时变量)
#      print(num1)
#      print(num2)
#      print(num1+num2)
#
# num(num1,num2)  #实际参数

自定义一个len函数

# print(len('12345'))
# string_ = input('请输入一个序列:')
# def my_len(string_):
#      count = 0
#      for i in string_:
#           count += 1
#      # print(count)
#      return count
#
# print(len(string_))
# print(my_len(string_))
# print(my_len(string_))

# def len1(str1):
#      count = 0
#      for i in str1:  #遍历
#           count += 1
#      print(count)
#      # return count
#
# len1('12345')