自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 问答 (5)
  • 收藏
  • 关注

原创 Python爬虫_深圳活动

一个人在深圳蛮无聊的所以爬一下豆瓣上深圳有的活动,方便参加。获取 名字、标签、时间、位置、价格 对于自己中意的直接参加或者了解详细后再说,爬取这个主要是有生成一个表格方便直接处理。 下面是代码:import reimport requestsimport bs4import reimport xlwt as xlwttitle = re.compile(r'<a .*title=(.*)">')tag = re.compile(r'<a.*p=future">(.

2021-10-11 09:12:17 118

原创 Python开发__网易云爬虫(前端和数图展示未来分享)

# @Time:2021/3/18 22:42# @Author:李 祥# @File:playlist.py# @Software:PyCharmimport csvimport jsonimport reimport timeimport requestsimport pymysqlfrom bs4 import BeautifulSoupfrom multiprocessing import Poolheaders = { 'User-Agent': 'Mozilla

2021-03-26 16:53:05 162

原创 算法与数据结构_常用排序总结(未完)

冒泡排序# 冒泡排序# 列表每两个相邻的数,如果前面比后面大,则交换这两个数# 时间复杂度:O(n2)def bubble_sort(li): for i in range(len(li) - 1): exchange = False for j in range(len(li) - i - 1): if li[j] > li[j + 1]: li[j], li[j + 1] = li[j + 1.

2021-03-26 16:50:54 127 1

原创 Python进阶_装饰器

# @Time:2021/3/26 14:08# @Author:李 祥# @File:装饰器.py# @Software:PyCharm# 功能:不改变现有函数的前提下,扩展函数功能# 语法:@# 在执行printInfo前,进行权限校验;执行后,进行日志记录# 装饰器的本质def check(func): def checkAndLog(): print("权限校验...") func() print("日志记录...")

2021-03-26 16:49:17 102

原创 算法与数据结构_常用查找总结

顺序查找(线性查找)从第一个元素开始,顺序进行搜索,直到找到元素或者搜素到最后一个元素。时间复杂度:O(n)内置函数为:index()def linear_search(li, val): for ind, v in enumerate(li): if v == val: return ind else: return None二分查找(折半查找)它是一种效率较高的查找方法。但是,折半查找要求线性表必

2021-02-01 21:16:10 100

原创 Python开发_小说管理系统CLL版

小说管理系统CLI版项目背景​ 随着网络文学的发展,读书不仅仅是在纸质文学上,大量的网络文学充斥着人们的视野。网络上越来越多的平台出现,有的小说只能在特定的平台展现。为了更好的记录小说,提升对小说各种信息的有效管理(从各种小说平台得到小说:暂未开发),小说管理系统的需求也会随着增加。主要功能:书籍的录入、查询、修改以及退出功能。需求分析1.系统描述​ 系统版本1.0,主要功能为小说基本信息的记录、编辑、查找、删除功能2.功能结构​ [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下

2021-01-08 23:37:25 567 1

原创 Python进阶_继承

继承# @Time:2021/1/5 16:48# @Author:李 祥# @File:继承.py# @Software:PyCharm# 继承# 面临问题:# 相似类型的定义过程中,大量重复性的代码# 继承的概念:# 在类名后面添加小括号,其中填写继承自哪个类型。# 对相同的属性或方法进行抽象,形成类别的提炼或分拆。# 好处:# 让类的定义具有更好的扩展性。它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。class Pet: d

2021-01-08 23:32:19 173

原创 Python进阶_封装

面向对象三大特征继承、封装、多态封装对外部隐藏信息,不能随意访问/修改对象的数据、方法通过限制类的属性和方法的访问方式,实现“封装”封装的三个层次类的封装:外部可以任意访问/修改类中的属性和方法私有属性:外部不可以访问/修改类的属性或方法公有方法+私有属性:外部有条件限制的访问/修改属性,调用方法封装的表现类的定义:将某些特定属性和方法进行 “隔离”每个学生有自己的年龄,外部可以通过对象任意读取或修改class Student: def __init__(self, name

2021-01-05 16:47:47 103

原创 Python爬虫_豆瓣TOP250

有数据库 和 表格 没有详细分开 后续整理吧先上代码import urllib.request, urllib.errorimport bs4import reimport xlwtimport sqlite3findLink = re.compile(r'<a href="(.*?)">') # 创建正则表达对象,表示规则findImgSrc = re.compile(r'img.*src="(.*?)"', re.S) # re.S 让换行符包含在内findTitle

2021-01-04 20:17:22 168

原创 Python进阶_面向对象

面向过程:是以过程为中心的编程思想。面向对象:是对象及其之间的交互为中心的编程思想class Car: # 定义类: class 类名: energy = "电动" # 属性,表示"特征" def move(self): # 方法,表示"行为" print("在移动...")c = Car() # 对象实例化 : 对象名称 = 类名()print("能源类型:", c.energy) # 访问属性: 对象名称.属性c.move() # 调用方法

2021-01-01 19:44:27 99

原创 练习题_文件操作

完成用户注册/登陆功能。******************************操作编码 操作[0] 注册[1] 登录******************************请输入你要进行的操作编码:注册:(1)提示用户输入,用户名和密码,其中密码需要输入2次。提示用户名只能为字母、下划线和数字;密码不能超过8位,密码只能为数字或大小写字母(2)注册成功后,账户密码记录在文件中 (user.txt)内容格式可以为 姓名:密码(3)用户名不能重

2020-12-31 01:05:09 405

原创 Python新手_QQ群

一起进步和答疑非卖课组织

2020-12-30 15:37:12 212

原创 Python进阶_模块与包

# @Time:2020/12/29 16:44# @Author:李 祥# @File:Module.py# @Software:PyCharm# 模块可理解为 一个Python文件# 模块的导入# 导入模块 importimport math # 按住 ctrl + 鼠标左键 可跳转到对应文件中print(math.pi) # 模块的调用# 导入自己定义的模块import myModulemyModule.add2Num(1, 2)# 模块的运行# 模块方式i

2020-12-29 20:00:46 84

原创 Python基础_文件操作

# @Time:2020/12/25 21:20# @Author:李 祥# @File:文件操作.py# @Software:PyCharm# 1.文件操作的基本流程:写(write)f = open("test.txt", "w") # 不存在文件则新建f.write("hello world")f.close() # 关闭文件 打开要关闭 避免占内存# 相对路径和绝对路径# 绝对路径:从盘符开始# 相对路径:型对于当前源码所在位置f = open(r"F:\s

2020-12-26 16:20:27 1074 1

原创 Python扩展_递归

# @Time:2020/12/19 15:30# @Author:李 祥# @File:递归.py# @Software:PyCharm# 递归# 形式:自己调用自己的函数# 递:递进# 归:返回# 递归的写法# 编写函数体 (功能) 一个函数# 确定结束条件和返回值# 调用函数自身,修改参数def printNum(n): print(n) if n == 1: return printNum(n - 1) # 调用自身的函

2020-12-19 15:58:40 91 1

原创 Python扩展_全局变量和局部变量

# @Time:2020/12/18 19:51# @Author:李 祥# @File:变量.py# @Software:PyCharm# 局部变量 | 函数内部定义的变量def test1(): a = 100 print(a) # 局部变量,仅能在test1中使用def test2(): a = 200 print(a) # a互不影响# print(a) # 报错,只能在所定义的函数内使用# 全局变量 | 在文件内有效,能在多

2020-12-18 20:14:51 159 2

原创 Python进阶_函数

# @Time:2020/12/18 15:37# @Author:李 祥# @File:function2.py# @Software:PyCharm# 函数的定义def func(): # 见名知意 pass # 占位# 函数的调用func()print(id(func()), type(func))# 函数名也可以作为变量进行赋值\传递\储存def func1(): print("func1")def func2(): print("f

2020-12-18 16:55:52 152 1

原创 Python基础_函数

# @Time:2020/12/16 16:22# @Author:李 祥# @File:function.py# @Software:PyCharm# 函数# 定义一个功能def printInfo(): print("-" * 20) print("人生苦短,我学Python") print("-" * 20)# 函数的调用printInfo()# 带参数的函数# a, b 为"形参"def add2Num(a, b): c = a + b

2020-12-17 23:45:06 110

原创 练习题_数据类型2(Python)

1.写一个代码片段统计一个字符串中出现的字符及其个数。(至少2种方式:分别使用列表和字典来实现)例如对于字符串“abcaaabcd”,统计的结果是:a(4个)b(2个)c(2个)d(1个)2.循环提示用户输入,并将输入内容追加到列表中(如果输入N或n则停止循环),输入结束打印列表如果用户输入的信息已经存在,则提示用户所输内容已存在,不再重复添加。提示:对于输入内容,需要考虑大小写和空格的情况3.有如下值 li= [11,22,33,44,55,66,77,88,99,90] ,将所有大于

2020-12-17 23:16:18 1012

原创 练习题_数据类型(Python)

1.实现一个整数加法计算器(多个数相加):如:content = input(“请输入内容:”) 用户输入:5+9+6 +12+ 13,然后进行分割再进行计算。2.计算用户输入的内容中有几个整数(以个位数为单位),并打印输出。如:content = input(“请输入内容:”)如:fhdal234slfh98769fjdla输出:8个数字:234987693.查找列表wordlist 中的元素,移除每个元素的空格,并找出以"A"或者"a"开头,并以"c"结尾的所有元素,并添加到一个新列表中

2020-12-17 23:14:31 1849

原创 Python基础_集合

# @Time:2020/12/15 23:32# @Author:李 祥# @File:Set.py# @Software:PyCharm# set和dict类似,也是一组key的集合,但没有value。key唯一性且无序s1 = set() # 空集合 只能用set()print(s1, type(s1))s1 = {1, 2, 3}print(s1, type(s1))# 集合:无序s1 = {1, 2, 3}s2 = {3, 2, 1}print(s1, type(

2020-12-16 14:38:30 57

原创 Python基础_字典

# @Time:2020/12/15 21:48# @Author:李 祥# @File:Dict.py# @Software:PyCharm# dictionary 无序的对象集合 使用(key-value)储存,极快的查找速度# key 必须使用不可变类型 且 唯一性# 字典的访问info = {} # 定义一个空字典info = {"name": "student", "age": 22}print(info, type(info))print(info["age"])

2020-12-15 23:30:16 79

原创 Python基础_元组

# @Time:2020/12/15 21:09# @Author:李 祥# @File:Tuple.py# @Software:PyCharm# Tuple(元组) 内容不可变,但是包含可变对象# 相像列表list#tup1 = () # 创建空元组print(tup1, type(tup1))tup1 = (50)tup2 = (50,) # 元组的必备条件为 , 单元素最后,不可省。 多元素可省略print(tup1, type(tup1))print(tup2, ty

2020-12-15 21:40:50 102

原创 Python扩展_浅拷贝和深拷贝

num1 = [1, 2, 3]num2 = num1 # 将num1的地址值复制给了num2num1.append(4)num2.append(5) # 无论num1或num2谁添加,都是一个内容(存储的地址内容)改变print(num1, id(num1))print(num2, id(num2)) #id看地址相同num2 = num1把num1堆内存的地址给了num2,num1和num2指定储存地址内容是相同的,无论谁改变新的内容,都是在同一个堆内存改变新的值,所以改变内

2020-12-15 02:01:29 206 1

原创 AttributeError: partially initialized module ‘copy‘ has no attribute ‘deepcopy‘ (most likely due to

AttributeError: partially initialized module ‘copy’ has no attribute ‘deepcopy’ (most likely due to a circular import)大多数这个报错是因为你的命名和导入的包相同 重构改名就好了十分尴尬

2020-12-15 01:02:07 1365

原创 Python基础_列表

# @Time:2020/12/13 0:07# @Author:李 祥# @File:List.py# @Software:PyCharm# 列表、元组、字典、集合,哦都是常用的容器类型# 容器类型,就是用来在内存中保存数据的。# 1.列表的创建与元素的访问# # 方法一:直接赋值# namelist = [] # 定义一个空的列表# print(type(namelist))## namelist = ["11", "11", 11, True, "aa"] # 存放多种

2020-12-14 22:51:36 121

原创 Python基础_字符串

# @Time:2020/12/12 14:33# @Author:李 祥# @File:String.py# @Software:PyCharm# 1.字符串String# python中没有字符类型,一个字符也是字符串类型# UTF-8编码 所有字符串都是unicode字符串# 单引号 双引号 三引号# word = 'String'# sentence = "this is sentence"# paragraph = """ more# this is paragraph

2020-12-13 00:02:21 140

原创 Python基础_for 和while的用法

Python for 和while的用法 自我记录# @Time:2020/12/12 13:33# @Author:李 祥# @File:for_and_range.py# @Software:PyCharm# 1.for"""range(start,stop,step) 返回可迭代对象左闭右开"""# 字符串# city = "guangzhou"# for i in city:# print(i)## # 元组# a = (10, 20, 30)# fo

2020-12-12 14:24:09 143

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除