【python基础】函数

一、函数的定义&语法

函数:

  a.是可以重复调用得到代码

  b.是完成某个功能

函数语法:

def functionName(参数1,参数2):

  函数体(你要实现的功能语句)

return[expression] #不带表达式的return相当于返回None

 

注意: 

  a.建议functionName命名稍微有点意义,让人一看就知道是实现什么功能。命名方式:驼峰...

  b.return可有可无。

  c.函数代码以def关键词开头,后接函数标识符和圆括号()

  d.函数内容以冒号开始,并且缩进。

  e.调用函数直接输入函数名就可以了。

 函数的参数:

1.形参和实参

形参:形式参数,定义函数时,使用形参,相当于占位符。

  目的是用来接收调用该函数时传递的参数

  告诉使用者,要提供的数据有哪些。

实参:调用函数时,是实参。

  必须是确定的值,所以实参一定是事先赋值了。

函数参数类型:

位置参数、指定参数、默认参数、动态参数的区别?

位置参数:按照形参顺序,放入实参。

指定参数:不用按照形参顺序,放入实参,传参时要求:形参名称=实参值。

默认参数:在定义函数时,给形参赋予一个默认值,需要放在形参的最后。

动态参数:在定义函数时,不限定参数的个数,用“args”和“”**kwargs“表示

  *args为元祖(print函数)

  **kwargs为字典

 

具体实现举例如下:

1.简单函数,不传参:

def printName():
    print("迪丽热巴,一个正能量满满的女神~")
printName()
输出结果:
  迪丽热巴,一个聚正能量满满的女神~
2.丰富你的函数——增加参数
#我喜欢的爱豆还挺多,想传另外一个爱豆名字~
def printName(name):
    print(name+"帅帅哒")
printName("周柏豪")

输出结果:
  周柏豪帅帅哒
3.我还想打印我爱豆的多一点资料,让大家更了解他~,传多个参
#传参无返回值。
def printName(name,age):
    print(name+",今年"+age+"岁,好帅啊")
printName("周柏豪",str(18))

输出结果:
  周柏豪,今年18岁,好帅啊
4.丰富你的函数——增加返回值
#传参且有返回值
#有的时候,不想打印,就用return
#调用加法,传2个参
def add(a,b):
    c=a+b
    return c #返回给c,赋值给result,让result打印出来

result=add(1,2)
print(result)

输出结果:
  3
#总结:
    # return语句:后面可以加变量也可以加表达式,用来返回对应的信息
    # 以后用的比较多,可以用来传递给其他的函数或者是值

5.把python字符串变成列表,每个字母是列表中的一个元素,利用for,in方法
#把str里面的元素变成列表元素,最后效果如下:list={'p','y','t','h','o','n'}
str = "python"
list1 = []
for i in str:
    list1.append(i)
print(list1)

输出结果:
  ['p', 'y', 't', 'h', 'o', 'n']
6.加个参数,因为参数是可变的,随时随地都有个参数,对不同的参数进行转换。
def strToList(str):
    #str = "python"
    list1 = []
    for i in str:
        list1.append(i)
    print(list1)#print和for同级,表示执行完for之后,再执行print

strToList("小小is best")

输出结果:
  ['', '', 'i', 's', ' ', 'b', 'e', 's', 't']
#以上就是利用函数实现了某个功能的用法

7.不传参,设置默认参数,不输入的情况下,会取你的默认值
def add(a,b=3):#a:位置参数,b:默认参数(带有默认值的时候)#如果两个都没有默认值,就都叫位置参数 #默认参数一定要放在位置参数的后面,如果不记得,没事写的过程中,会报错
    c=a+b
    print(c)
add(4)
add(4,6)

输出结果:
  7
  10
8.第一个计算出来    //会报错,因为b位置参数没有值且位置应该在a之前。
# def add(a=3,b):
#     c=a+b
#     print(c)
# add(4)
# add(4,6)
#参数:
    # a.位置参数:可以传1个或多个,你开心就好,但是调用的时候必须跟你传参的数量来。
    # b.默认参数:可以传1个或多个,但是必须在位置参数之后,调用的时候可以小于等于参数个数。

9.实现一个对任意字符,完成一个累加函数,完成任意序列和的计算
#思路:传参两个,完成2个参数之间所有整数相加,考虑下range(n,m-1)函数,比如:range(1,101)
def addnum(a,b):
  result=0
  for i in range(a,b):
    result=result+i
    return result
addnum(1,101)

输出结果:
  5050

 二、模块的定义和引用

Python模块(Module),是一个Python文件,以.py结尾,包含了Python对象定义和Pyhton语句,模块让你能够有逻辑地组织你的Python代码段,把相关的代码分配到一个模块里,让你的代码更好用,模块能定义函数,类和变量,模块里也能包含可执行的代码。

目的:提高复用性

用法:

  a.import模块名

  b.from 模块名 import 对应的类或者函数 (一般是调用类里面的方法)

注意:二者的区别?

  a.简单的模块一般倾向于使用import,而不是from。

  b.多数的from语句是用于明确列举想要的变量,而且限制在每个文件中只用一次from *形式。这样一来,任何无定义的变量名都可以认为是存在于from *所引用的模块内。

  c.当你必须使用两个不同模块内定义的相同变量名变量时,才真的必须使用import,这种情况下不能使用from。

 

 

posted @ 2019-03-31 00:47  做一只热爱生活的小透明  阅读(207)  评论(0)    收藏  举报