![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python基础学习
Tdyang111
这个作者很懒,什么都没留下…
展开
-
python_mysql
"""查询操作"""import MySQLdb# 1. 创建连接对象from MySQLdb.cursors import DictCursorconn = MySQLdb.connect(host='', port=, user='root', password='', database='', charset='utf8mb4')try: # 2. 获取游标对象 with c原创 2020-11-20 20:02:37 · 220 阅读 · 1 评论 -
python第二十九天
import requestsfrom lxml import etreefrom multiprocessing import Poolfrom re import findallimport jsonimport osfrom threading import Thread# 多线程间通信的队列from queue import Queue# 多进程间通信的队列from multiprocessing import Queuedef get_index_page():原创 2020-11-09 17:23:49 · 155 阅读 · 2 评论 -
python第二十八天
Python虚拟环境的安装和适用1. 安装在windows电脑的命令提示符中执行安装虚拟环境软件包: pip install virtualenv;2. 虚拟环境的使用1)创建虚拟环境在自己的电脑上找个合适的位置创建一个文件夹用来存放虚拟环境,然后通过CD指令进入该文件夹:磁盘名:(例如:E:)cd 选择路径,复制地址创建虚拟环境:cd 路径地址(自动显示) virtualenv ENV激活:激活后ENV\路径地址(自动显示)\activate 退出:ENV\路径地址(自动原创 2020-11-05 19:38:21 · 164 阅读 · 0 评论 -
python第二十七天
from threading import Thread, current_threadimport time# 1.多个线程可以直接操作同一个进程中的同一个数据num = 200print('定义:', current_thread())def add_num(): global num num += 100 global name name = '张三' print('操作:', current_thread())t = Thread(tar原创 2020-11-04 20:53:18 · 152 阅读 · 0 评论 -
python第二十六天
import timefrom datetime import datetimedef download(name): print(f'{name}开始下载!{datetime.now()}') time.sleep(3) print(f'{name}下载结束!{datetime.now()}')download('信条')download('加勒比海盗')download('摔跤吧爸爸')# 进程默认有一个线程,这个线程叫主线程;其他的线程的都叫子线程。#原创 2020-11-04 09:40:49 · 106 阅读 · 0 评论 -
python第二十五天
# 1.xpath解析原理:# 通过需要的标签在html/xml结构的标签路径去获取指定标签# 2.xml数据格式# xml和json一样是一种通用的数据格式,用于多语言程序之间的数据传输# xml和json的比较:xml(更安全,方便加密)、json更轻量级(传输的时候更快)# xml和html一样是以节点(标签)为基本单位来提供数据的,例如:"""保存一个商店中的书的信息:json:{ name: '新华书店', books: [ { name: '流程的原创 2020-11-02 19:18:44 · 804 阅读 · 0 评论 -
python第二十四天
rom bs4 import BeautifulSoupimport requests# 1.html页面解析的方法"""1)正则表达式 - 出神入化的正则;不懂前端(re)2)通过css选择器选中标签 - 熟悉css选择器;熟悉jQuery(bs4,pyQuery)3)通过xPath获取标签 - 熟悉HTML结构和标签(lxml)"""# 准备数据def get_data(): with open('files/安居客.html',原创 2020-10-30 17:03:05 · 135 阅读 · 0 评论 -
python第二十三天
from selenium import webdriverfrom selenium.webdriver import ChromeOptions# 1.创建设置对象options = ChromeOptions()# 2.取消自动测试检测options.add_experimental_option('excludeSwitches', ['enable-automation'])# 3.取消图片加载options.add_experimental_option("prefs", {"p原创 2020-10-29 20:21:23 · 216 阅读 · 0 评论 -
python第二十二天
import requests# requests: 是python用来发送http请求的一个第三方库# 1.发送请求获取响应# requests.get(url) - 发送get请求# requests.post(url) - 发送post请求response = requests.get('https://www.baidu.com')# 2.获取响应内容# 1)状态码code = response.status_codeprint(code)if code == 20原创 2020-10-28 20:50:48 · 191 阅读 · 0 评论 -
python第二十一天
<!-- 内部样式 --> <style type="text/css"> /* 这儿写的css代码 */ #box1{ /* 设置文字颜色 */ color: green; /* 设置背景颜色 */ background-color: yellow; /* 设置字体大小 */ ...原创 2020-10-27 19:04:26 · 143 阅读 · 1 评论 -
day19作业
建立一个汽车类Auto,包括轮胎个数,汽车颜色,车身重量,速度等属性,并通过不同的构造方法创建实例。至少要求 汽车能够加速 减速 停车。 再定义一个小汽车类CarAuto 继承Auto 并添加空调、CD属性,并且重新实现方法覆盖加速、减速的方法class Auto: def __init__(self, tyre=4, color='白色', weight=2, speed=0): self.tyre = tyre self.color = color ..原创 2020-10-27 17:55:11 · 556 阅读 · 0 评论 -
python第十九天
# 1.什么是继承"""让子类直接拥有父类的属性和方法的过程就是继承子类 - 继承者父类 - 被继承者(又叫超类)"""# 2.怎么继承"""class 子类(父类1,父类2,父类3,...): 类的说明文档 类的内容 说明:1)默认情况下,类继承自object:class 类名:== class 类名(object):2)python中的类支持多继承"""class Person: num = 61 def __init原创 2020-10-24 14:36:00 · 104 阅读 · 0 评论 -
python第十八天
class Student: def __init__(self, name, tel, study_id='0001', score=0): self.name = name self.tel = tel self.study_id = study_id self.score = score # 在打印一个对象的时候,系统会自动用这个对象去调用__repr__方法,并且获取这个方法的返回值。返回值是什么就打印什么(返回值必须原创 2020-10-22 19:25:44 · 77 阅读 · 0 评论 -
day17-面向对象作业
from math import pi1. 定义一个矩形类,拥有属性:长、宽 拥有方法:求周长、求面积 class Rectangle: def __init__(self, long, wide): self.a = long self.b = wide def Perimeter(self): return (self.a + self.b) * 2 def a原创 2020-10-22 19:25:11 · 86 阅读 · 0 评论 -
python第十七天
# 1.面向过程编程(穷人)# 一遇到问题马上想到的是怎么用算法或者步骤(逻辑)直接解决问题 - 逻辑# 2.函数式编程(小资)# 一遇到问题马上想到有没有一个函数具有解决这个问题的功能,如果有直接拿过来用,没有就自己定义一个 - 函数# 3.面向对象编程(土豪)# 一遇到问题马上想到有没有一个对象具有解决这个问题的功能,如果有直接用,没有就自己创建一个 - 类和对象# 1.什么是类、什么是对象'''类就是拥有相同功能和相同属性的对象的集合 - 抽象的原创 2020-10-21 19:13:39 · 87 阅读 · 0 评论 -
day16作业
利用正则表达式完成下面的操作:1.用户名匹配 要求: 1.用户名只能包含数字 字母 下划线 2.不能以数字开头 3.⻓度在 6 到 16 位范围内re_str = r'[a-zA-Z_][\da-zA-Z_]{5,15}'print(fullmatch(re_str, 'kk1111A1_1111111'))密码匹配 要求: 1.不能包含!@#¥%^&*这些特殊符号 2.必须以字母开头 3.⻓度在 6 到 1原创 2020-10-21 19:11:29 · 129 阅读 · 0 评论 -
python第十六天
# 1.二进制类型/字节(bytes)# 2.其他数据转二进制:bytes(数据)# 字符串转二进制:字符串.encode(encoding='utf-8')print(bytes(10)) # b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'# 3.二进制转字符串:# 方法一:str(数据, encoding='utf-8')# 方法二:二进制数据.decode(encoding='utf-8')from re import fullmatch,原创 2020-10-20 17:59:05 · 105 阅读 · 0 评论 -
学生简易管理系统(部分仅供参考)
def main(): # 读主页的页面内容 page = read_txt_file('files/homePage') while True: # 欢迎页面 print(page) # 选择提示 value = input('请输入(1-3):') # 根据选择完成不同的功能 if value == '1': # print('登录')原创 2020-10-19 20:13:11 · 384 阅读 · 0 评论 -
python第十五天
# os.chdir('./files')# 1.常用标准库"""1.数学模块math(普通数学模块)、cmath(复数的数学模块)2.随机模块random.randint(m,n) - 产生[m, n]的随机整数random.random() - 产生 [0, 1) 的随机数random.shuffle(列表) - 随机打乱列表中的元素random.choice(列表) - 从列表中随机获取一个元素random.choices(列表, k=N) - 从列表中随机获取原创 2020-10-19 19:19:17 · 120 阅读 · 0 评论 -
python第十四天
import json# 1.什么是json"""json是一种数据格式;几乎所有的高级语言都支持这种数据格式的数据处理,所以json主要用于不同语言之间的数据交流"""# 2.json格式"""json格式的要求:1)一个json有且只有一个数据 2)唯一的数据必须是json支持的数据类型的数据json支持的数据类型:1)数字类型(Number) - 所有数字对应的类型,表示的时候直接写,例如:100,-102,12.3,3e42)字符串(S原创 2020-10-16 20:03:49 · 75 阅读 · 0 评论 -
day13作业
作业:实现登陆 注册效果def main(): # 读主页的页面内容 page = read_txt_file('files/homePage') while True: # 欢迎页面 print(page) # 选择提示 value = input('请输入(1-3):') # 根据选择完成不同的功能 if value == '1': # print('登录原创 2020-10-16 20:03:12 · 106 阅读 · 0 评论 -
python第十三天
# 1.什么是包"""包含__init__.py文件的文件夹就是包包用来对py文件(模块)进行分类或者封装"""# 2.怎么使用包中的模块"""1)import 包名.模块名 包名.模块名.变量 2)import 包名.模块名 as 新名 对'包名.模块名'进行重命名,命名通过'新名.变量'的方式使用变量 3)from 包名 import 模块名1,模块名2,.... 模块名.变量 4)from 包名 import 模块名1 as 新模块名1,模块名原创 2020-10-15 19:04:08 · 73 阅读 · 0 评论 -
day12 作业
写一个装饰器@tag要求满足如下功能:"""@tag(name='p')def render(text): # 执行其他操作 return text@tag(name='div')def render2(): return 'abc'print(render('Hello')) # 打印出: <p>Hello</p>print(render2()) # 打印出: <div>abc</div>"""d..原创 2020-10-15 11:01:12 · 84 阅读 · 0 评论 -
python第十二天
# 1.有参装饰器的功能 - 在给函数添加功能的时候可以通过参数控制具体的操作(操作不固定)# 2.怎么写有参装饰器"""示例:def 函数名0(装饰器的参数列表): def 函数名1(func): def 函数名2(*args, **kwargs): result = func(*args, **kwargs) 新功能 return result return 函数名2原创 2020-10-14 20:08:59 · 65 阅读 · 0 评论 -
python第十一天
import time# 1.什么是装饰器"""装饰器是一种专门用来给其他的函数添加功能的函数"""# 2.给函数添加统计执行时间的功能# 方式一:直接在需要添加功能的函数中添加新功能对应的代码(缺点:同样的功能的代码可能需要写多遍)def func1(): start = time.time() print('hello world !') end = time.time() print('执行时间:', end-start)func1()# 方式二原创 2020-10-13 20:45:58 · 81 阅读 · 0 评论 -
day 9作业
利用列表推导式, 完成以下需求:a. 生成一个存放1-100中各位数为3的数据列表:结果为 [3, 13, 23, 33, 43, 53, 63, 73, 83, 93]list1 = [x for x in range(3, 100, 10)]print(list1)b. 利用列表推到是将 列表中的整数提取出来:例如:[True, 17, "hello", "bye", 98, 34, 21] --- [17, 98, 34, 21]list = [True, 17, "hel..原创 2020-10-13 20:39:56 · 434 阅读 · 0 评论 -
python第十天
# 1.什么是返回值"""返回值就是从函数内部传递到函数外部的数据(默认情况下函数内部产生的新数据,在函数外部不能使用)"""# 2.怎么确定函数返回值"""1)python中每个函数都有返回值,返回值是什么就看执行函数体的时候遇到的return关键字后面的数据是什么;如果没有遇到return,返回值就是None(希望作为返回值的数据在函数结束的时候放在return后面)2)return的作用遇到return会确定函数返回值并且直接结束函数"""# 3.怎么在函数外部获取函数返回值原创 2020-10-12 19:10:26 · 70 阅读 · 0 评论 -
国庆作业
输入一个字符串,打印所有奇数位上的字符(下标是1,3,5,7…位上的字符)例如: 输入**'abcd1234 ’ ** 输出**‘bd24’** str1 = input('请输入一个字符串:') print(str1[1::2])输入用户名,判断用户名是否合法(用户名长度6~10位)str2 = input('请输入用户名:')if 6 <= len(str2) <= 10: print('你输入用户名合法')else: print('你..原创 2020-10-09 20:46:29 · 124 阅读 · 0 评论 -
python第九天
# 推导式是用来快速方便的产生列表或者字典的表达式# 1.列表推导式'''1)基本结构[表达式 for 变量 in 序列]产生一个新的列表,列表中的元素就是每次循环对应的表达式结果'''list1 = [10 for x in range(3)]print(list1) # [10, 10, 10]list2 = [2*x for x in range(1, 4)]print(list2) # [2, 4, 6]# 练习1:写一个列表推导式,产生一个列表中的元素满足以下规律原创 2020-10-09 19:00:20 · 72 阅读 · 0 评论 -
python第八天
# 1.in 和 not in# 字符串1 in 字符串2 - 判断字符串1是否是字符串2的子串(判断字符串2是否包含字符串1)print('a' in 'abc') # Trueprint('ab' in 'abc') # Trueprint('ac' in 'abc') # False# 2.相关函数# len、str# 1)len(字符串) - 获取字符串的长度# 2)str(数据) - 将数据转换成字符串# a.哪些能转:所有的数据都可以转换成字符串#原创 2020-10-09 11:43:51 · 70 阅读 · 0 评论 -
python第七天
# 1.什么是集合(set)'''集合是容器型数据类型,将{}作为容器的标志里面多个元素用逗号隔开:{元素1,元素2,元素3,...}可变的;无序的元素:不可变的数据,唯一的'''# 1)空集合x = {} # 空字典s1 = set() # 空集合print(type(x), type(s1)) # <class 'dict'> <class 'set'># 2)元素是不可变的s2 = {10, 'abc', (1, 2)}print(s2) #原创 2020-09-29 19:08:39 · 230 阅读 · 0 评论 -
day6作业
1.声明一个字典保存一个学生的信息,学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不明)student = { '姓名': '狗蛋', '年龄': '27', '成绩': { '语文': 77, '数学': 68, '英语': 99, '物理': 45, '化学': 76, '生物': 85, }, '电话': '17865254658', '性原创 2020-09-29 15:09:24 · 343 阅读 · 0 评论 -
day3 分之和循环作业
基础题根据输入的成绩的范围打印及格 或者不及格。a = float(input('请输入学生成绩:'))if a < 60: print('该学生成绩不及格')else: print('该学生成绩及格')根据输入的年纪范围打印成年或者未成年,如果年龄不在正常范围内(0~150)打印这不是人!。age = int(input('请输入年纪:'))if 0 <= age < 18: print('未成年')if 150 >= age >原创 2020-09-28 17:57:13 · 104 阅读 · 0 评论 -
python第六天
1.什么是元组(tuple)‘’’元组就是不可变的列表元组是容器型数据类型,将()作为容器的标志,里面多个元素用逗号隔开:(元素1,元素2,元素3,…)元组不可变(不支持元素的增删改);元组是有序的(支持下标操作)元素:可以是任何类型的数据,并且可以重复 # 空元组没有意义‘’’t1 = (10, 23, 90, 10)print(type(t1), t1)2.只有一个元素的元组:(元素,)元组中如果只有一个元素的时候,那么这个元素后边必须加逗号3.省略括号在没有歧义的原创 2020-09-28 17:50:45 · 72 阅读 · 0 评论 -
循环练习题
1.判断101-200之间有多少个素数,并输出所有素数。 count = 0 for num in range(101, 200): for x in range(2, num-1): if num % x == 0: break else: print(num, '是素数') count += 1 print('101~200之间素数的个数是:', count)2.求整数1~10原创 2020-09-28 17:43:15 · 688 阅读 · 0 评论 -
python第五天
# 列表切片 - 获取列表中部分元素(一次性获取多个元素)# 1.基本语法'''列表[开始下标:结束下标:步长] - 从开始下标开始获取到结束下标前为止,每次下标值增加步长去获取下一个元素注意:1)列表切片的结果一定是列表@@@2)结束下标对应的元素一定取不到!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!3)步长正负代表方向,正是从前到后,负是从后到前a.如果步长为正,表示从前往后取,这个时候开始下标对应的元素必须在结束下标对应的元素的前面,否则结果是空b.如果步原创 2020-09-28 17:31:31 · 74 阅读 · 0 评论 -
day4作业和答案
1.已知一个数字列表,求列表中心元素。list1 = [10, 206, 3, 89, 23, 9, 12]count = len(list1)if count & 1: print(list1[count//2])else: print(list1[count//2-1], list1[count//2])2.已知一个数字列表,求所有元素和。list1 = [1, 2, 3, 4, 5]# 方法一:sum1 = 0for x in list1: sum1原创 2020-09-28 17:28:31 · 216 阅读 · 0 评论 -
python第四天
# python中和数字相关的类型:int(整型)、float(浮点型)、bool(布尔)、complex(复数)# 1.int(整型) - 所有整数对应的类型'''python中整数支持4种写法:十进制数、二进制数、八进制数、十六进制数十进制数:基数是0-9, 表示的时候直接写二进制数:基数是0和1, 表示的时候加前缀0b/0B:0b1100八进制数:基数是0-7,表示的时候加前缀0o/0O:0o625十六进制数:基数是0-9,a-f(A-F),表示的时候加前缀:0x/0X:0x123f原创 2020-09-28 17:09:18 · 232 阅读 · 0 评论 -
day2-运算符和变量作业
选择题print(100 - 25 * 3 % 4) 应该输出什么? (B)A. 1B. 97C. 25D. 0下列哪种说法是错误的(A)。A. 除字典类型外,所有标准对象均可以⽤于布尔测试B. 空字符串的布尔值是FalseC. 空列表对象的布尔值是FalseD. 值为0的任何数字对象的布尔值是False下列表达式的值为True的是(B)。A. 3>2>2B. 1 and 2 != 1C. not(11 and 0 != 2)D. 10 < 20原创 2020-09-24 19:45:01 · 114 阅读 · 0 评论 -
python第三天
#Day2一、for循环python中的循环有两种:for循环和while循环1.for循环语法:for 变量 in 序列:循环体说明:a. for/in - 关键字;固定写法b. 变量 - 可以是任意变量;一般写一个新的变量c. 序列 - python中容器型数据类型,例如:字符串、列表、字典、元组、集合、迭代器、生成器、range等d. 冒号 - 固定写法e. 循环体 - 和for保持一个缩进的一条或者多条语句;循环体就是需要重复执行原创 2020-09-24 19:44:18 · 197 阅读 · 0 评论