第二节课 python基础

第二节课 python基础,第1张

第二节课 python基础

目录

1、选择结构

2、循环结构

3、文件IO

4、 *** 作mysql

5、日期函数

6、函数

7、面向对象

8、包

9、异常处理


1、选择结构

if、elif、else

if 表达式1:

代码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、文件IO

open函数

读文件

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、 *** 作mysql

pip 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

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5672999.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存