- 博客(73)
- 收藏
- 关注
原创 python面试题
python 170道面试题语言特性谈谈对 Python 和其他语言的区别简述解释型和编译型编程语言Python 的解释器种类以及相关特点?Python3 和 Python2 的区别?Python3 和 Python2 中 int 和 long 区别?xrange 和 range 的区别?编码规范什么是 PEP8?了解 Python 之禅么?了解 DocStrings 么?了解类型注解么?例举你知道 Python 对象的命名规范,例如方法
2021-01-22 11:34:27
655
1
原创 使用pycharm爬取小说网站内容并且上传至mysql
爬取顶点小说网站首页内容最近更新区 类型 书名 章节 作者名 更新日期import requestsimport resource = requests.get('https://www.23us.com/').content.decode('gbk')a = '<li><p class="ul1">\[(.*?)\]《<a class="poptext" href=".*?" target="_blank">(.*?)dome = re.compil
2021-01-20 11:23:19
752
原创 人工智能的核心与基础
1.对于人工智能什么是核心,什么是基础?算法是核心,数据和计算是基础2.找准定位,怎么找到合适的算法?1)分析具体的业务2)根据业务找到需要分析的数据3)应用常见的算法4)特征工程,调参数。优化5)得到结果3.该怎么做1)学会分析问题,使用机器学习算法的目的,需要提前撕开学习算法的目的,想要使用算法完成何种问题。2)建议先学会使用库火框架解决问题,原理慢慢研究。4.数据类型1) 离散型数据:有不同类别个体的数目所得到的数据,又称为计数数据。这些数据全部都是整数(不能再细分,也不能进
2020-12-21 11:54:45
1072
原创 python 12.16月考。。
1 如何在Python中管理内存?2 什么是python模块?Python中有哪些常用的内置模块?把很多函数分组,分别放到不同的文件里,一个.py文件就称之为一个模块。datetimecollections struct XML 3 Python中的局部变量和全局变量是什么?局部变量:在函数内部定义并使用的变量。全局变量:函数体以外的变量就是。4 什么是Python中的类型转换?类型转换是指将一种数据类型转换为另一种数据类型int() list() dict() str
2020-12-16 11:34:32
122
原创 python常用内建模块之(collections)
collections是Python内建的一个集合模块,提供了许多有用的集合类。namedtuple我们用namedtuple可以很方便地定义一种数据类型,它具备tuple的不变性,又可以根据属性来引用,使用十分方便。from collections import namedtuple point = namedtuple('point',['x','y'])a = point(1,2)
2020-12-09 08:57:05
97
原创 python常用内建模块之(datetime)
datetimedatetime是Python处理日期和时间的标准库。获取当前日期和时间:from datetime import datetimenow = datetime.now() #获取当前datetimeprint(now)print(type(now))datetime是模块,datetime模块还包含一个datetime类,通过from datetime import datetime导入的才是datetime这个类。datetime.now()返回当前日期和时间,其类
2020-12-08 16:12:45
764
原创 python IO编程之(stringIO与BytesIO)
StringIO数据读写不一定是文件,也可以在内存中读写。StringIO顾名思义就是在内存中读写str。要把str写入StringIO,我们需要先创建一个StringIO,然后,像文件一样写入即可:from io import StringIO #调用模块f = StringIO() #创建一个StringIOf.write('hello') #将hello写入StringIOf.write(' ')f.write('world!')print(f.getvalue())
2020-12-05 16:34:37
671
2
原创 python IO编程之序列化
我们把变量从内存中变成可存储或传输的过程称之为序列化,序列化之后,就可以把序列化后的内容写入磁盘,或者通过网络传输到别的机器上。反过来,把变量内容从序列化的对象重新读到内存里称之为反序列化,即unpickling。Python提供了pickle模块来实现序列化。pickle.dumps #把任意对象序列化成一个bytes当我们要把对象从磁盘读到内存时,可以先把内容读到一个bytes,然后用pickle.loads() 方法反序列化出对象,JSON如果我们要在不同的编程语言之间传递对象,就必须
2020-12-04 20:19:02
72
原创 python IO编程(文件读写)
写文件a = open('hello.txt','w') #确定文件位置 ,并决定读写执行 r:读 w:写 a.write('Hello World') #要写入得内容a.close() #关闭文件因为和.py文件在一个文件夹内所以可以不用写具体的文件位置只写文件名即可。w 写入内容将会覆盖之前的内容如果想在原本的内容中添加内容要使用 a+ 命令读文件a = open('hello.txt','r') #与写文件作用相同print(a.read()) #调用read(
2020-12-03 21:38:23
110
原创 面向对象高级编程
使用__slots__但是,如果我们想要限制实例的属性怎么办?比如,只允许对Student实例添加name和age属性。为了达到限制的目的,Python允许在定义class的时候,定义一个特殊的__slots__变量,来限制该class实例能添加的属性:class Student(object): __slots__ = ('name','age','score')s = Student()s.name = 'wyy's.age = 21s.score = 99print(s.na
2020-12-03 21:21:11
88
原创 python获取对象信息和实例属性和类属性
使用type()首先,我们来判断对象类型,使用type()函数:基本类型都可以用type()判断:使用isinstance()对于class的继承关系来说,使用type()就很不方便。我们要判断class的类型,可以使用isinstance()函数。使用dir()如果要获得一个对象的所有属性和方法,可以使用dir()函数,它返回一个包含字符串的list。小结通过内置的一系列函数,我们可以对任意一个Python对象进行剖析,拿到其内部的数据。要注意的是,只有在不知道对象信息的时候,我们才会去获
2020-12-03 15:50:02
676
原创 python面向对象编程(继承和多态)
继承当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类、父类或超类(Base class、Super class)。class Animal(object): #新建一个父类 def run(self): print('Animal is running')class Dog(Animal): #创建一个子类,这个子类的父类是Dog passclass Cat(Animal):
2020-12-03 15:21:27
116
原创 python链表
class Node: def __init__(self,data): # 要存的数据 self.data = data # 指向下一个节点的指针 self.next = Noneclass LinkedList: def __init__(self): # 链表长度 self.size = 0 # 链表的头部 self.head = None
2020-12-02 17:15:52
204
原创 python面向对象编程(访问限制)
在Class内部,可以有属性和方法,而外部代码可以通过直接调用实例变量的方法来操作数据,这样,就隐藏了内部的复杂逻辑。从Student类的定义来看,外部代码还是可以自由地修改一个实例的name、score属性 class Student(object): def __init__(self,name,score,ww): self.name=name self.score=score self.ww=ww def prins(se
2020-12-02 17:15:04
101
原创 python面向对象编程(类和实例)
面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但各自的数据可能不同。仍以Student类为例,在Python中,定义类是通过class关键字:class Student(object): passStudent是类名,类名通常是大写开头的单词,紧接着是(object),表示该类是从哪个类继承下来的,通常,如果没有合适的继承类,就使用object类,这是所
2020-12-02 16:20:05
156
原创 python模块
模块模块是一组Python代码的集合,可以使用其他模块,也可以被其他模块使用。创建自己的模块时,要注意:模块名要遵循Python变量命名规范,不要使用中文、特殊字符;模块名不要和系统模块名冲突,最好先查看系统是否已存在该模块,检查方法是在Python交互环境执行import abc,若成功则说明系统存在此模块。使用模块python本身内置了很多模块,只要安装完毕就可以立即使用。我们以内建的sys模块为例,编写一个hello的模块:' a test module '__author__ =
2020-12-02 15:40:55
78
原创 python高阶函数(sorted)
排序算法Python内置的sorted()函数就可以对list进行排序a = sorted([1,54,435,633,22,4])print(a)sorted()函数也是一个高阶函数,它还可以接收一个key函数来实现自定义的排序,例如按绝对值大小排序:b = sorted([-20,2,44,12,14],key=abs)print(b)关于字符串排序:默认情况下,对字符串排序,是按照ASCII的大小比较的,由于’Z’ < ‘a’,结果,大写字母Z会排在小写字母a的前面。忽略
2020-11-29 17:18:06
224
原创 python高阶函数(filter)
Python内建的filter()函数用于过滤序列。filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素。在一个list中,删掉偶数,只保留住奇数:def is_odd(n): return n % 2 == 1print(list(filter(is_odd,[1,2,3,4,5,6,9,10,15])))把一个序列中的空字符串删掉:def not_empty(s): return s and s.strip()p
2020-11-29 16:13:48
167
原创 python高阶函数(map/reduce)
map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。map()函数接收两个参数,一个是函数,一个是Iterable实例def f(x): return x * xa=[1,2,3,4,5,6,7,8,9]r=map(f,a) # 将a中的元素分别带入到函数中print(list(r))reduce把一个函数作用在一个序列[x1, x2, x3, …]上,这个函数必须接收两个参数求和:reduce常用来做累计计算将不规范的英文变为首字母大写d
2020-11-28 20:49:18
74
原创 python高级特性(生成器,迭代器)
生成器我们使用列表生成式创建一个列表会受到内存限制,列表的容量是有限的。并且如果我们创建一个包含100万个元素的列表时,不仅占用很大的储存空间,而且在我们仅仅需要访问前几个元素的时候,后面的绝大部分元素占用的空间都会白白浪费掉。创建生成器(generator):这种一边循环一边计算的机制。我们就可以在循环的过程中不断推算出后续的元素,做到不创建完整的list,从而节省大量的空间。第一种创建生成器的方法:把一个列表生成式的 [] 改为 () 创建了一个生成器g = (x for x in ra
2020-11-28 16:01:47
101
原创 11.26 python周考
str #字符串int #整数list #列表tuble #元组set #集合dict #字典2。 写出列表去重二种方法加一种不用set和循环的方法a = [1,2,3,,5,6,6,5,4,3,2,1]4a = set(a)print(list(a))4 已知列表a = [1,2,4,7,9] 列表b = [2,4,9,10,21]写个函数求出相同部分与不同部分a = [1,2,4,7,9]b = [2,4,9,10,20]print(set(...
2020-11-27 16:42:40
122
原创 python函数之递归函数
在函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这个函数就是递归函数。fact(n)可以表示为n x fact(n-1),只有n=1时需要特殊处理。于是,fact(n)用递归的方式写出来就是:def fact(n): if n==1: return 1 return n * fact(n - 1)print(fact(4))此函数输出的式子#4*3*2*1使用递归函数需要注意防止栈溢出。在计算机中,函数调用是通过栈(stack)这种数据结构实现的
2020-11-26 17:39:16
115
原创 python函数的参数
位置参数可以把power(x)修改为power(x, n),用来计算xndef power(x, n): s = 1 while n > 0: n = n - 1 s = s * x return s 第二种 x**n return x**nprint(power(4,2))non(x, n)函数有两个参数:x和n,这两个参数都是位置参数,调用函数时,传入的两个值按照位置顺序依次赋给参数x和n。默认
2020-11-25 22:01:11
280
原创 python函数之函数的调用与定义
Python内置了很多有用的函数,我们可以直接调用。要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs:a = abs(100)print(a)a = abs(-34)print(a)a = abs(12.34)print(a)也可以在交互式命令行通过help(abs)查看abs函数的帮助信息调用函数的时候,如果传入的参数数量不对,会报TypeError的错误,并且Python会明确地告诉你:abs()有且仅有1个参数,但是如果给出两个将会报错如果传入的参数数量是对的
2020-11-25 21:39:19
178
原创 python基础之dict(字典)
Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。定义字典a = {'wang':87,'zhang':77,'li':73,'zhao':88}print(a)使用字典 通过键来查找值。a = {'wang':87,'zhang':77,'li':73,'zhao':88}print(a['wang'])一个键对应一个值,多次对一个键放入值,后面的值会冲掉前面的值:删除一个
2020-11-25 15:48:56
620
原创 python基础 if elif 条件判断配置猜大小游戏
方法一while True: first = int(input('请输入一个数')) while True: second = int(input('请猜')) if second > first: print('比答案大了') elif second == first: print('正确') break else: pr
2020-11-25 15:15:53
317
原创 使用python配置一个计算器
方法一a = input('清输入第一个数')b = input('请输入运算符号')c = input('清输入第三个数')print(eval(a+b+c))方法二value = eval(input('清输入第一个数')+input('请输入运算符号')+input('清输入第三个数'))print(value)方法三a = int(input('清输入第一个数'))b = input('请输入运算符号')c = int(input('清输入第三个数'))if b=='
2020-11-25 14:59:28
174
原创 python基础之tuple(元组)
元组:tuple和list非常类似,但是tuple一旦初始化就不能修改元组的数据列表类型当你定义一个tuple时,在定义的时候,tuple的元素就必须被确定下来如果要定义一个空的tuple,可以写成()但是,要定义一个只有1个元素的tuple要在这个数字后面添加一个逗号以免被认为定义的不是元租而是1这个数Python在显示只有1个元素的tuple时,也会加一个逗号,,以免你误解成数学计算意义上的括号。当元组中有列表时列表中的元素可以改变tuple所谓的“不变”是说,tuple的每个元
2020-11-25 14:47:10
1324
1
原创 python打印九九乘法表 通过数学计算计算数字的个位十位百位
使用for in 循环语句大印九九乘法表for a in range(1,10): strs = '\t' for b in range(1,a+1): strs+=(str(b)+'*'+str(a)+'='+str(a*b)+'\t') print(strs)
2020-11-21 15:52:50
349
1
原创 Python基础之列表函数
#1、append():添加一个元素# a = [1,2,3,4]# a.append('test')# print a# 结果为:[1, 2, 3, 4, 'test']#2、extend():连接两个列表# a =[1,2,3,4,5]# b =[6,7,8]# a.extend(b)# print a# 结果为:[1, 2, 3, 4, 5, 6, 7, 8]#3、insert(index,value):在指定位置插入一条数据,# l = [1,
2020-11-19 16:40:49
125
原创 Python基础之字符串函数
python字符串内置函数定义:它是一个有序的字符的集合,用于存储和表示基本的文本信息,’ ‘或" "或 ‘’’ ‘’’ 中间包含的内容称之为字符串特性:1.只能存放一个值2.不可变3.按照从左到右的顺序定义字符集合,下标从0开始顺序访问,有序.字符串常用操作1.字母处理:.upper() # 全部大写.lower() # 全部小写.swapcase() # 大小写互换 不常使用.capitalize() # 首字母大写,其余小写 与title功
2020-11-19 16:08:36
230
原创 Python基础之字符串和编码
常见的字符编码有ASCII:最早只有127个字符被编码到计算机里,也就是大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码。常用的中文编码: gbk gb2312 gb18030utf8 :万国码 支持大多数国家的编码ASCII编码GBK 和 GB2312对于我们来说能在计算机中显示中文字符是至关重要的,然而ASCII表里连一个偏旁部首也没有。所以我们还需要一张关于中文和数字对应的关系表。一个字节只能最多表示256个字符,要处理中文显然一个字节是不够的,所以我们需要采用两个字节
2020-11-18 23:43:28
179
原创 phython基础之数据类型和变量
基本的数据类型整数:int 包括负整数,在程序中的表示方法和数学上的写法一模一样浮点数:float 浮点数也就是小数,一个浮点数的小数点位置是可变的,3.14。字符串:str 被 ’ ’ " " 括起来的文本,引号不是字符串的一部分,字符串内如果包含引号需要加 \ 转义符标识。布尔值 bool :true 和 false空值 None:None不能理解为0,它是一个特殊的空值复合容器类型print('hello world')#字符串print(123)#数字print ([1,
2020-11-18 23:13:34
124
原创 LIMIT命令和OFFSET命令的用法
SELECT * FROM testtable LIMIT 3,1;SELECT * FROM testtable LIMIT 1 OFFSET 2;SELECT * FROM testtable LIMIT 3;注意:1.数据库数据计算是从0开始的2.OFFSET X是跳过X个数据,LIMIT Y是选取Y个数据3.LIMIT X,Y 中X表示跳过X个数据,读取Y个数据4.当LIMIT和OFFSET组合使用的时候,LIMIT后面只能有一个参数,表示要取的的数量,OFFSET表示要跳过的数量
2020-11-18 14:35:57
1304
原创 进程、线程和协程。
多进程:每个进程就如同一个人有一个任务,每个人只有一个任务互不干扰,并且任务都是分开的所以同步起来简单。多线程:像一个人在一段时间内进行多个任务,在进行一个任务时,其他任务将会被挂起,切换简单,占用内存少,CPU使用率高。协程:简单说协程是线程的升级版,就是用户自己控制每个任务切换的时机,有计划的执行安排的任务。...
2020-11-17 16:37:29
165
原创 MySQL中修改数据的命令: INSERT、UPDATA、DELETE。
INSERT:向数据库插入新的记录INSERT语句的基本语法:INSERT INTO <表名> (字段1, 字段2, ...) VALUES (值1, 值2, ...);练习命令:INSERT INTO students (id,class_id,name,gender,score) VALUES(20,2,"诸葛钢铁","女",88);运行SELECT * FROM students;命令得到:在本练习中也可以不用列出id字段和对应的值,因为在这题中id字段是一个自增主键,
2020-11-15 16:49:13
7017
原创 MySQL中常用的数据类型:“ 数值类型、日期和时间类型、字符串类型。”
MySQL中常用的数据类型1、数值类型数据类型描述TINYINT(size)-128到127常规。0到255天符号*。在括号中规定最大位数。SMALLINT(size)-32768到32767常规。0到65535无符号*。在括号中规定最大位数。MEDIUMINT(size)-8388608到 8388607普通。0 to 16777215无符号*。在括号中规定最大位数。INT(size)-2147483648到2147483647常规。0到429496729
2020-11-14 11:00:38
511
原创 MySQL查询数据: 基本查询、条件查询、投影查询、排序、分页查询、聚合查询、多表查询、连接查询。
基本查询要查询数据库表的数据,我们使用如下的SQL语句:SELECT * FROM <表名>条件查询select * from students where score >= 80;or 或关系 and 与关系 not 非关系要组合三个或者更多的条件,就需要用小括号()表示如何进行条件运算。select * from students where score >= 80 and score <=90;投影查询(即
2020-11-13 22:35:41
260
转载 配置MySQL环境变量
①、 path②、MYSQL_HOME第一步:安装MySQL服务这里下载完成的是一个压缩文件,直接将里面的‘mysql-8.0.15-winx64’文件夹解压到你想要安装的路径即可。在Windows系统中以管理员方式运行命令行。接下来通过命令行工具进入刚才解压的MySQL安装文件中的bin目录下。然后输入mysqld -install 等待安装服务。注意中间有一个空格。第二步:配置MySQL在命令行中进入bin目录后,先输入‘mysqld --initialize–insecure’,回
2020-11-13 17:32:52
84
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人