<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ZX152811的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ZX152811</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ZX152811]]></copyright><item><title><![CDATA[day 21 csv文件和PDF文件操作]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/122179918</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/122179918</guid><author>ZX152811</author><pubDate>Mon, 27 Dec 2021 20:29:43 +0800</pubDate><description><![CDATA[import os
from reportlab.pdfgen import canvas  # 提供pdf文件
from reportlab.pdfbase import pdfmetrics  # 注册字体
from reportlab.pdfbase.ttfonts import TTFont  # 提供字体对象
from PyPDF2 import PdfFileWriter, PdfFileReader

# 获取文件夹下面的文件名
pdf_names = os.listdir('pdfs')
p]]></description><category></category></item><item><title><![CDATA[day-19z正则表达式]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/122116112</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/122116112</guid><author>ZX152811</author><pubDate>Thu, 23 Dec 2021 20:40:24 +0800</pubDate><description><![CDATA[正则表达式
1.正则表达式

正则表达式是一种让复杂的字符串问题变得简单的一个工具
需要导入模块from  re import*

2.匹配符号
2.1re模块简介

re 模块是python用来支持正则相关操作的系统模块


fullmatch（正则表达式，字符串） -   判断正则表达式和指定的字符串是否完全匹配
不能匹配结果是None

2.2匹配类符号—正则表达式是由各种各样的正则符号组合而成
2.2.1 普通字符  -  在正则中没有特殊功能和特殊意义的字符

普通字符在正则表达式中表示符号本身，]]></description><category></category></item><item><title><![CDATA[day19正则表达式作业]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/122116101</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/122116101</guid><author>ZX152811</author><pubDate>Thu, 23 Dec 2021 20:39:48 +0800</pubDate><description><![CDATA[利用正则表达式完成下面的操作:
一、不定项选择题


能够完全匹配字符串"(010)-62661617"和字符串"01062661617"的正则表达式包括（A ）
A.r"\(?\d{3}\)?-?\d{8}"		
B. r"[0-9()-]+"		
C.r"[0-9(-)]*\d*"	
D.r"[(]?\d*[)-]*\d*"


能够完全匹配字符串"back"和"back-end"的正则表达式包括（AB  ）
A. r'\w{4}-\w{3}|\w{4}'
B. r'\w{4}|\w{4}-\w{3}']]></description><category></category></item><item><title><![CDATA[day18-面向对象作业]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/122094675</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/122094675</guid><author>ZX152811</author><pubDate>Wed, 22 Dec 2021 20:50:53 +0800</pubDate><description><![CDATA[定义一个狗类和一个人类：
狗拥有属性：姓名、性别和品种   拥有方法：叫唤
人类拥有属性：姓名、年龄、狗   拥有方法：遛狗
class Dog:
    def __init__(self, name, gender, varieties):
        self.name = name
        self.gender = gender
        self.varieties = varieties

    def calling(self):
        return '汪~..]]></description><category></category></item><item><title><![CDATA[day 18类和对象]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/122094656</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/122094656</guid><author>ZX152811</author><pubDate>Wed, 22 Dec 2021 20:43:24 +0800</pubDate><description><![CDATA[day 18
一、类和对象
1、认识类和对象

什么是类：类就是拥有相同功能和相同属性的对象的集合
什么是对象：对象就是类的实例

2、创建类 : 用代码来描述清楚这个类是拥有哪些相同功能以及哪些相同属性的对象的集合

功能 - 函数
属性（数据） - 变量


语法：
class 类名:
    类的说明文档
    类的内容
    
说明：
class   -  关键字；固定写法
类名     - 由程序员自己命名，必须满足两个要求：a.标识符 b.不是关键字
                    ]]></description><category></category></item><item><title><![CDATA[day 14 文件操作]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121989787</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121989787</guid><author>ZX152811</author><pubDate>Fri, 17 Dec 2021 09:59:04 +0800</pubDate><description><![CDATA[day  14 文件操作
一、数据持久化
1.数据持久化
计算机存储空间分为：运行内存和磁盘两种。
程序中产生的数据默认都是保存在运行内存中，存储在运行内存中的数据在程序结束后会自动销毁。
如果将数据存储到磁盘中，那么数据除非手动删除或者磁盘损坏，否则数据会一直存在。磁盘存储数据的基本单位是文件。
数据持久化指的就是将程序中的数据以文件的方式保存到磁盘中。
2.常见数据持久化工具
数据库（.db、.sqlite）、.json文件(.json)、xml文件（.xml）、plist文件（.plist）、普通文本]]></description><category></category></item><item><title><![CDATA[day 12]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121944498</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121944498</guid><author>ZX152811</author><pubDate>Wed, 15 Dec 2021 09:05:40 +0800</pubDate><description><![CDATA[day12函数进阶
1.匿名函数

语法：

变量（函数名） = lambda 形参列表：返回值


相当于：
def （形参列表）：
return 返回值

注意：匿名函数除了定义以及参数类型说明和普通函数不一样，其他的都一样

# 写一个匿名函数求两个数的和
sum1 = lambda num1, num2: num1 + num2
result = sum1(10, 30)
print(result)
result = sum1(11, 3.0)
print(result)

func1 = lamb]]></description><category></category></item><item><title><![CDATA[day12-函数进阶作业]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121944446</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121944446</guid><author>ZX152811</author><pubDate>Wed, 15 Dec 2021 09:05:22 +0800</pubDate><description><![CDATA[已经列表points中保存的是每个点的坐标(坐标是用元组表示的，第一个值是x坐标，第二个值是y坐标)
points = [
  (10, 20), (0, 100), (20, 30), (-10, 20), (30, -100)
]

以下问题使用实参高阶函数来解决
1）获取列表中y坐标最大的点
2）获取列表中x坐标最小的点
3）获取列表中距离原点最远的点
4）将点按照点到x轴的距离大小从大到小排序
# 1）获取列表中y坐标最大的点
result = max(points, key=lambda x:..]]></description><category></category></item><item><title><![CDATA[day 10]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121919499</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121919499</guid><author>ZX152811</author><pubDate>Tue, 14 Dec 2021 09:20:46 +0800</pubDate><description><![CDATA[day10字符串
1、字符相关操作和函数
1.1字符串相关运算
1.1.1数学运算

+—— 字符串1+字符串2——将两个字符串合并成一个字符串
乘法—— 字符串1**N、 N*字符串——字符串重复N次产生一个新的字符串

str1 = 'abc'
str2 = '123'
print(str1 + str2)  # abc123

1.1.2比较运算符


==、！=


比较大小&gt;=、&lt;=、&gt;、&lt;


两个字符串比较大小比较的是第一对不相等的元素（字符）的编码值的大小


应用：]]></description><category></category></item><item><title><![CDATA[day 11]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121919484</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121919484</guid><author>ZX152811</author><pubDate>Tue, 14 Dec 2021 09:20:13 +0800</pubDate><description><![CDATA[day 11 函数基础
1. 定义函数
1.1 函数的概率

函数就是实现某一特定功能的代码的封装。-    不同的函数有不一样的功能。

1.2函数的分类

根据函数是由谁定义（创建）的，将函数分为系统函数和自定义函数


1）系统函数——系统自带的函数（别人造好的函数）
2）自定义函数——有程序员自己创建的函数

1.3 定义函数

语法：
def 函数名（形参列表）：

​		 函数说明文档
​     	函数体

说明：


def ——   关键字；固定写法




函数名——由程序员自己命名
要]]></description><category></category></item><item><title><![CDATA[day11-函数基础作业]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121919474</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121919474</guid><author>ZX152811</author><pubDate>Tue, 14 Dec 2021 09:19:41 +0800</pubDate><description><![CDATA[写一个函数，实现maketrans的功能，将两个字符串转换成一个字典，第一个字符串中的字符是键，第二个字符串中的字符是值

第一个字符串： ‘abcmn’   第二个字符串：‘一二三四五’
结果：{‘a’: ‘一’, ‘b’: ‘二’, ‘c’: ‘三’, ‘m’: ‘四’, ‘n’: ‘五’}

def exchange(str1: str, str2: str):
    print({str1[i]: str2[i] for i in range(len(str1))})


exchange('..]]></description><category></category></item><item><title><![CDATA[day10-字符串作业]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121919457</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121919457</guid><author>ZX152811</author><pubDate>Tue, 14 Dec 2021 09:19:08 +0800</pubDate><description><![CDATA[编写一个程序，交换指定字典的key和value。
  例如:dict1={'a':1, 'b':2, 'c':3}  --&gt;  dict1={1:'a', 2:'b', 3:'c'}  
        
dict1 = {'a': 1, 'b': 2, 'c': 3}
result = dict([(value, key) for key, value in dict1.items()])
print(result)

#{1: 'a', 2: 'b', 3: 'c'}
 



编写一个程序，..]]></description><category></category></item><item><title><![CDATA[day9-字符串和集合作业]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121844161</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121844161</guid><author>ZX152811</author><pubDate>Thu, 09 Dec 2021 21:03:12 +0800</pubDate><description><![CDATA[用三个集合表示三门学科的选课学生姓名(一个学生可以同时选多门课)


求选课学生总共有多少人


求只选了第一个学科的人的数量和对应的名字


求只选了一门学科的学生的数量和对应的名字


求只选了两门学科的学生的数量和对应的名字


求选了三门学生的学生的数量和对应的名字


python = {'stu1', 'stu2', 'stu3', 'stu4', 'stu6'}
java = {'stu2', 'stu5', 'stu7', 'stu8', 'stu10'}
html5 = {'stu2'..]]></description><category></category></item><item><title><![CDATA[day 9]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121844013</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121844013</guid><author>ZX152811</author><pubDate>Thu, 09 Dec 2021 20:56:13 +0800</pubDate><description><![CDATA[day 9 集合和字符串
1.集合
1.2什么是集合（set）


1）集合是容器型数据类型；将{}作为容器标志，里面多个元素用逗号隔开：{元素1，元素2，元素3，…}


2）可变的；无序


3）元素的要求：
a.必须是不可变的数据
b.元素是唯一的（自动去重）


1.1空集合
s1 = set()
print(len(s1), type(s1))  # 0 &lt;class 'set'&gt;
#无序
print({10, 20, 30} == {30, 10, 20})  # True

#元素]]></description><category></category></item><item><title><![CDATA[day 8]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121800819</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121800819</guid><author>ZX152811</author><pubDate>Wed, 08 Dec 2021 20:47:03 +0800</pubDate><description><![CDATA[day 8 字典
1.用变量获取元素
1.1使用多个变量同时获取多个列表或者元组中的元素

要求变量的个数必须和元组/列表的元素的个数保持一致

t1 = (10, 20, 30, 40)
a, b, c, d = t1
print(a, b, c, d)  # 10 20 30 40

1.2 使用多个变量同时获取多个列表或者元组中的元素

当变量的个数小于元素的个数的时候，必须在某一个变量前加
获取的时候先让不带的变量按照顺序获取对应的数据，把剩下的全部保存到带的变量中

student = ('a',]]></description><category></category></item><item><title><![CDATA[day8-字典作业]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121800807</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121800807</guid><author>ZX152811</author><pubDate>Wed, 08 Dec 2021 20:46:32 +0800</pubDate><description><![CDATA[定义一个变量保存一个学生的信息，学生信心中包括：姓名、年龄、成绩(单科)、电话、性别

stu={'name':'小周','age':18,'score':100,'tel':'1234456','gender':'女'}
print(stu)

#{'name': '小周', 'age': 18, 'score': 100, 'tel': '1234456', 'gender': '女'}



定义一个列表，在列表中保存6个学生的信息(学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不.]]></description><category></category></item><item><title><![CDATA[day 7]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121775933</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121775933</guid><author>ZX152811</author><pubDate>Tue, 07 Dec 2021 18:39:19 +0800</pubDate><description><![CDATA[day 7列表和列表推导式
1、列表相关运算符
1.1数学运算符+、*
1.1.1 +

列表1+列表2——功能：将两个列表中的元素合并产生一个新的列表
不影响原列表

list1 = [100, 200, 300]
list2 = [10, 20]
print(list1 + list2)  # [100, 200, 300, 10, 20]

1.1.2 *

列表*N
N*列表
N个列表相加——列表中的元素重复N次，产生一个新的列表

print(list2 * 3)  # [10, 20, 10, ]]></description><category></category></item><item><title><![CDATA[day7-列表作业]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121775924</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121775924</guid><author>ZX152811</author><pubDate>Tue, 07 Dec 2021 18:38:48 +0800</pubDate><description><![CDATA[创建一个列表，列表中有10个数字, 保证列表中元素的顺序，对列表进行排重,并对列表使用进行降序排序

例如：[70, 88, 91, 70, 107, 234, 91, 177, 282, 197]
		--- 去重之后 [70, 88, 91, 107, 234, 177, 282, 197]
  	---- 降序排序 [282, 234, 197, 177, 107, 91, 88, 70]

nums = [70, 88, 91, 70, 107, 234, 91, 177, 282, 197]
n.]]></description><category></category></item><item><title><![CDATA[day 6]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121755581</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121755581</guid><author>ZX152811</author><pubDate>Mon, 06 Dec 2021 20:41:56 +0800</pubDate><description><![CDATA[day 6
1.列表
1.1 容器型数据类型（序列）
变量从是否是容器分为：非容器型数据类型变量和容器型数据类型的变量
1）非容器型数据类型的变量 ——一个盒子里面只有一个格子，所以同时只能保存一个数据。例如：int，float，bool，none
2）容器型数据类型——一个盒子里面有多个格子，每个格子可以存不一样的数据，所以同时可以保存多个数据
例如：list，dict，tuple , set, str等
1.2什么是列表（list）
特点：
1）列表是容器型数据类型，将中括号作为容器标志，里面有多个元素]]></description><category></category></item><item><title><![CDATA[day6-列表作业]]></title><link>https://blog.youkuaiyun.com/ZX152811/article/details/121755569</link><guid>https://blog.youkuaiyun.com/ZX152811/article/details/121755569</guid><author>ZX152811</author><pubDate>Mon, 06 Dec 2021 20:41:21 +0800</pubDate><description><![CDATA[1.已知一个数字列表，求列表中心元素。
nums1 = [1, 2, 3, 4, 5, 6, 7, 8, 9]
chang = len(nums1)
if len(nums1) % 2 == 0:
    print(nums1[int(chang / 2)])
    print(nums1[int(chang / 2) - 1])
else:
    chang -= 1
    print(nums1[int(chang / 2)])
    
#5

2.已知一个数字列表，求所有元素和。
nums2]]></description><category></category></item></channel></rss>