目录
1、选择结构
2、循环结构
3、文件IO
4、 *** 作mysql
5、日期函数
6、函数
7、面向对象
8、包
9、异常处理
1、选择结构
if、elif、else
if 表达式1:
代码2(前面必须是四个空格)
代码3(前面必须是四个空格)
elif 表达式2:
代码5(前面必须是四个空格)
代码6(前面必须是四个空格)
代码7(前面必须是四个空格)
.....
.....
else:
代码8(前面必须是四个空格)
代码9(前面必须是四个空格)
Python中以缩进的方式区分代码块
输入格式
age = int(input("请输入一个年龄:"))
2、循环结构for循环类似java中的for each,更多的是用于遍历数据容器
一般循环更多是用while实现
while 表达式1:
循环体代码1(前面必须是四个空格)
循环体代码2(前面必须是四个空格)
循环体代码3(前面必须是四个空格)
....
3、文件IOopen函数
读文件
f1 = open("data/students.txt",mode='r',encoding='utf8')
read(n) 表示读n个字符
readline 读一行
readines 读所有的行 并构成list返回
写文件
f2 = open("data/newStu.txt",mode='w',encoding='utf8')
换行需要手动加上n
with open
不需要手动的关闭文件
读取student.txt的数据并写入newStu2.txt
with open("data/students.txt",mode='r',encoding='utf8') as f3:
with open("data/newStu2.txt",mode='a',encoding='utf8') as f4:
f4.writelines(f3.readlines())
4、 *** 作mysqlpip install pymysql
import pymysql
conn = pymysql.connect(user='root',passwd='123456',host='master',port=3306,database='student')
cursor = conn.cursor() #创建游标 类似statement
t = cursor.execute("select id,name,age from student where clazz like %s",('理科%'))
print("总计记录数:",t) #返回的是信息条数
# print(cursor.fetchone()) # 返回一条记录 # print(cursor.fetchmany(3)) # 返回n条记录 # print(cursor.fetchall()) # 返回所有记录 注意使用
记得关闭连接
cursor.close()
conn.close()
with pymysql.connect(user='root', passwd='123456', host='master', port=3306, database='student') as conn: with conn.cursor() as cursor: nums = cursor.execute("select * from student where age>%s", 23) for i in range(nums): print(cursor.fetchone()) # conn.rollback() # 发生错误进行回滚 # conn.commit() # 没有异常直接提交
5、日期函数格式化日期字符串
from datetime import datetime
字符串转datetime
dt = datetime.strptime("2021-12-07 16:41:38","%Y-%m-%d %H:%M:%S")
datetime转字符串
date_str = datetime.strftime(dt, "%Y/%m/%d %H:%M:%S")
6、函数不需要访问权限修饰符
也不需要返回值类型
def 函数名(参数1,参数2....)
代码块
代码块
代码块
如果需要返回值
return 返回值
2、递归函数
尽量避免使用递归函数
自己调用自己
停止条件
3、匿名函数
lambda 表达式
lambda 参数1,参数2....:返回值
4、函数参数的类型
位置参数(必选参数)、默认参数、可变参数、关键字参数、命名关键字参数
默认参数 y=2
可变参数:
传入n1 就返回 n1
传入n1,n2 就返回n1+n2
def sumN(*args):
关键字函数
注册函数:
7、面向对象封装、继承、多态
定义类
class Person(object):
封装方法和变量(属性)
object是所有类的基类
构造函数
类中所有的方法的第一个参数都是self,代表对象本身 相当于java中的this
def __init__(self,id,name,gender):
定义了类的属性并进行赋值
self.id = id
self.name = name
self.gender = gender
如果定义的属性不想被直接获取可以在命名的时候以两个下划线开头
self.__secret = '这个是一个秘密'
8、包# 查看程序运行时所引用的包的位置 import sys for path in sys.path: print(path)
# 避免在被导入的时候执行 # python 中的程序入口 # 只有当当前模块被执行时 才会执行 if __name__ == '__main__': print(i) hello()
9、异常处理# 异常处理 ''' try: 可能会发生异常的代码 可能会发生异常的代码 可能会发生异常的代码 except 异常1: 异常1发生了该怎么办 except 异常2: 异常2发生了该怎么办 ...... else: 没有发生异常就会执行 finally: 不管有没有发生异常都会执行 ''' # 自定义异常 class AlienError(Exception): pass
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)