1、函数命名定义规范:
(1)、函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ()。
(2)、圆括号之间可以用于传入参数。
(3)、函数内容以冒号起始,并且缩进。
(4)、return [表达式] 结束函数,将返回值传给调用方。不带return相当于返回 None。
格式如下:
def 函数名(参数列表):
函数体
def sayHello():
print(“HelloWorld”)
sayHello()
2、不定长参数:
(1)、一个星(*):表示接收的参数作为元组来处理
(2)、两个星(**):表示接收的参数作为字典来处理
def add(a, *kwargs): def add(a, ** kwargs):
sum = a; sum = a
for i in kwargs: for (i ,j) in kwargs.items():
sum = sum + i sum = sum + j
return sum return sum
res = add(1, 2, 3, 4) res = add(a = 1, b = 2, c = 3)
print(res) print(res)
3、类
class ClassName:
<statement-1> (里面写标识符或方法)
. . .
<statement-N>
实例:
class student:
age = 0
name = “”
def get_name(self): #self 代表这个类本身非传入参数
return self.name
def set_name(self, name):
self.name = name
4、List列表常用函数
list.append(obj) 在列表末尾添加新的对象
list.index(obj) 从列表中找出某个值第一个匹配项的索引位置
list.insert(index, obj) 将对象插入列表的索引位置
list.remove(obj) 移除列表中某个值的第一个匹配项
list.copy() 复制列表
len(list) 获取list里面元素个数
5、Dict字典常用函数:
dict.items() 以列表返回可遍历的(键, 值) 元组数组
dict.pop(key) 删除key 所对应的值
dict.copy() 复制列表
len(dict) 获取dict里面key个数
6、random常用函数:
random.random() 返回随机生成的一个实数,它在[0,1)范围内
random.randint(begin,end) 返回随机生成的一个整数,它在[begin,end]范围内
random.sample(str,length) 返回随机生产的一个列表,列表长度为length
7、File读写常用函数:
open(filepath,method) 打开文件
method主要包括下面3种方式
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式
w 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
file.readline() 读取单行
file.readlines() 读取多行
file.write(str) 写入数据
file.flush() 刷新文件内部缓冲,直接把内部缓冲区的数据立刻写入文件, 而不是被动的等待输出缓冲区写入(配合file.write使用)
file.close() 关闭文件
8、time模块实际主要有2种应用
(1)获取当前时间:-------在日志中常见
import time
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
%Y 年 %m 月 %d 日 %H 时 %M 分 %S 秒
(2)获取一段程序运行的时间:
import time
start = time.time() #time.time()获取当前时间戳
time.sleep(3)
end = time.time()
print(end-start)
9、正则模块实际主要有2种应用
(1)、提取返回值中的一串字符串(比如想获得code的值)
使用:re. findall(regex, str)
(2)、判断返回值中是否有期望的值
使用:re. search
import re
text = “<MsgTest><code>0000</code><reg>100</reg>” +
“<code>a</code></MsgTest>”
res = re.findall(“<code>(.*?)</code>”, text)
print(res[0])
if re.search(“<code>0001</code>”, text):
print(“True”)
else:
print(“False”)
10、异常:运行期检测到的错误被称为异常
2种常用异常操作方式:
(1)、捕获异常
try:
操作步骤(比如open(一个不存在文件路径,”r”))
except 异常类型: (异常类型种类https://www.cnblogs.com/zln1021/p/6106185.html)
print(异常信息)
(2)、自定义异常
raise Exception(异常信息)
11、练习
(1)、def sayHello(name):
hw = name
print(hw + “ SayHello”)
return hw #不加retrun和加return这句查看下面运行结果
response = sayHello(“rlk”);
print(response)
(2)、写一个加法函数,得到a+b的结果
(3)、写一个减法函数,得到a,b的相差值(正数)
(4)、已知list = [“a”, 1 ,”name”,”age”] ,求分别进行下列操作得到list结果
list.append(“app”)
list.index(“name”)
list.insert(1,”ins”)
list.remove(“age”)
(5)、获得一个长度为6,里面字符为a-zA-z0-9的字符串(比如ay8372)
(6)、第一步在D盘写入一个文件mytest.txt,内容为“new create”
第二步追加内容(“追加的内容”)
第三步读取文件内容
(7)、计算第6题的执行时长,并打印当前时间(年-月-日 时:分:秒形式)
(8)、从code = “<id>20</id><reg>foddlfk2</reg><code>0000</code>”中获取到0000
(9)、定义一个相加方法,当所得和小于20,抛出一个自定义异常
12、习题答案
(1)、加return情况返回rlk SayHello 以及 rlk
不加return情况返回rlk SayHello 以及 None
(2)、def add(a, b):
return a + b
sum = add(1, 2)
print(sum)
(3)------------------------------------------------
def subtraction(a, b):
if a > b:
return a - b
else:
return b - a
print(subtraction(2, 1))
(4)------------------------------------------------------------------------------------------
list.append(“app”) --------------- ['a', 1, 'name', 'age', 'app']
list.index(“name”) --------------- 2
list.insert(1,”ins”) ---------------- ['a', 'ins', 1, 'name', 'age']
list.remove(“age”) ---------------- ['a', 1, 'name’]
(5)、
import random str2 = ""
for i in range(0,9):
str2 = str2 + str(i)
for i in range(65, 91):
str2 = str2 + chr(i)
for i in range(97,
123):
str2 = str2 + chr(i)
card = random.sample(str2, 6)
card = ''.join(card)
print(card)
(6)、
wt = open("d:/mytest.txt", "w")
wt.write("new create")
wt.flush()
wt.close()
fo = open("d:/mytest.txt", "a")
fo.write("追加的内容")
fo.flush()
fo.close()
rd = open("d:/mytest.txt", "r")
print(rd.readlines())
rd.close()
(7)、
import time
start = time.time()
wt = open("d:/mytest.txt", "w")
wt.write("new create")
wt.flush()
wt.close()
fo = open("d:/mytest.txt", "a")
fo.write("追加的内容")
fo.flush()
fo.close()
rd = open("d:/mytest.txt", "r")
print(rd.readlines())
rd.close()
end = time.time()
print(end - start)
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
(8)、
import re code = "<id>20</id><reg>foddlfk2<reg><code>0000</code>"
list = re.findall("<code>(.*?)</code>", code)
print(list[0])
(9)、
def add(a ,b):
sum = a + b
if sum >= 20:
return sum
else:
raise Exception("相加小于20了")