python学习task3.4
上次博客已经写过数据类型方面的笔记
一、变量
1.变量,望文生义,就是可变化的量。
name = 'Crossin'
myVar = 123
price = 5.99
visible = True
“=”的作用是把右边的值赋予给左边的变量。
python中创建变量的方法很简单,不需要像c一样先要定义变量,而是直接能给变量赋值
2.变量在一次“赋值”操作之后,还可以继续给它赋予新的值,而且可以是不同类型的值。
例如:
a = 123
print(a)
a = 'hi'
print(a)
3.“=”的右边可以更复杂一点,比如是一个计算出的值:
例如:
value = 3 * 4
print(value) \12
value = 2 < 5
print(value) \Ture
4.“=”的右边也可以是input():
name = input()
print(name)
5.变量命名:
第一个字符必须是字母或者下划线_
剩下的部分可以是字母、下划线_或数字0~9
变量名称是对大小写敏感的
二、函数
1.函数的调用
调用内置函数:要调用一个函数,需要知道函数的名称和参数,可在python官网https://docs.python.org/3/library/functions.html#abs进行查看
调用函数时注意传入的参数个数和参数类型一致
2.函数的定义
定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。
例:
def my_abs(x):
if x >= 0:
return x
else:
return -x
print(my_abs(-99))
这个函数用于求一个数的绝对值,python中对代码的缩进要求较高,若不能正确缩进则无法运行出结果
拓展
空函数
def kong():
pass
pass可以用来作为占位符,比如现在还没想好怎么写函数的代码,就可以先放一个pass,让代码能运行起来。
如果这个代码不使用pass语句来充当占位符,则不能运行出结果
3.函数的参数传递
(1)常见的函数传递方式:
定义
def func(arg1, arg2):
print (arg1, arg2)
调用
func(3, 7)
我们把函数定义时的参数名(arg1、arg2)称为形参,调用时提供的参数(3、7)称为实参。
这种方式是根据调用时提供参数的位置进行匹配,要求实参与行参的数量相等,默认按位置匹配参数。调用时,少参数或者多参数都会引起错误。这是最常用的一种函数定义方式。
在调用时,也可以根据形参的名称指定实参。如:
func(arg2=3, arg1=7)
注意:
没有指定参数名的参数必须在所有指定参数名的参数前面,且参数不能重复。以下的调用都是错误的:
func(arg1=13, 14)
func(15, arg1=16)
(2)更加灵活的参数传递方式:
def func(args) 这种方式可以接受任意数量的参数。
在变量前加上星号前缀(),调用时的参数会存储在一个 tuple(元组)对象中,赋值给形参。在函数内部,需要对参数进行处理时,只要对这个 tuple 类型的形参(这里是 args)进行操作就可以了。因此,函数在定义时并不需要指明参数个数,就可以处理任意参数个数的情况。
不过有一点需要注意,tuple 是有序的,所以 args 中元素的顺序受到赋值时的影响
例如:
def printAll(*args):
for i in args:
print (i, end=' ')
print ()
调用:
printAll(1,2,3)
printAll(3,2,1)
输出:
1 2 3
3 2 1
(3)最灵活的参数传递方式:
func(**kargs)
调用时也需要遵守:
指定参数名称的参数要在无指定参数名称的参数之后;
不可以重复传递,即按顺序提供某参数之后,又指定名称传递