<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[2302_77477307的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/2302_77477307</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; 2302_77477307]]></copyright><item><title><![CDATA[给什么字段加索引？索引的类型？]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/160818340</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/160818340</guid><author>2302_77477307</author><pubDate>Wed, 06 May 2026 14:27:16 +0800</pubDate><description><![CDATA[我们放在州和积分列上的复合索引包含了关于每个顾客的三条信息，ID 州 积分，因此如果在select里面包含这三者中的内容，mysql可以完整使用索引来满足查询，这就叫覆盖索引：一个包含所有满足查询需要的数据的索引。基于哈希表实现, 对索引字段计算哈希值，直接指向对应的物理位置。前缀索引：如果在上面创建索引的列是一个字符串列，我们的索引会占用大量的空间，且无法达到很好的性能，索引越小越好，因为它们可以存在内存中，让搜索更好，所以索引字符串列的时候，我们不想在索引中包含整个列，只想包含列的前几个字符或列前缀。]]></description><category></category></item><item><title><![CDATA[Numpy 数据库]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/159724148</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/159724148</guid><author>2302_77477307</author><pubDate>Mon, 06 Apr 2026 22:35:13 +0800</pubDate><description><![CDATA[多维性：支持0维（标量，数字），1维（向量），2维（矩阵）及更高维同质性：所有元素类型必须一致（通过dtype指定），不同数据类型会被强制转换成相同数据类型高效性：基于连续内存块存储，支持向量化运算。]]></description><category></category></item><item><title><![CDATA[数据定义：模式、表、索引]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/155542273</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/155542273</guid><author>2302_77477307</author><pubDate>Wed, 03 Dec 2025 22:54:25 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[数据管理技术的三个发展阶段]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/155425951</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/155425951</guid><author>2302_77477307</author><pubDate>Sun, 30 Nov 2025 21:43:45 +0800</pubDate><description><![CDATA[特征维度第一阶段：数据集第二阶段：文件核心管理者应用程序操作系统的文件系统结构性无结构，是数据的简单堆砌有结构，以记录为单位的流式文件数据独立性完全不独立，逻辑和物理结构均由程序定义独立性差，逻辑结构仍由程序定义，物理结构由OS管理持久性临时性，通常随程序结束而消失永久性，长期存储在外部设备上共享性不共享，数据与程序一一对应共享性差，文件结构是针对特定程序的，不同程序难以共用数据冗余极高高，因为文件是为应用服务的，相同数据可能在不同文件中重复存储程序员负担沉重，需要管理所有数据细节。]]></description><category></category></item><item><title><![CDATA[关系数据库]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/154908821</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/154908821</guid><author>2302_77477307</author><pubDate>Sun, 16 Nov 2025 19:52:30 +0800</pubDate><description><![CDATA[1.1 关系（二维表）域是一组具有相同数据类型的值的集合笛卡尔积的子集叫做关系1.2 关系模式（二维表的框架）1.3 关系数据库。]]></description><category></category></item><item><title><![CDATA[三级模式、二级映像、概念和逻辑结构]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/154798704</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/154798704</guid><author>2302_77477307</author><pubDate>Fri, 14 Nov 2025 20:14:23 +0800</pubDate><description><![CDATA[设计数据库主要是满足信息管理和数据操作的要求：在数据库中应该存储和管理哪些数据对象：对数据对象需要进行哪些操作，如查询、增、删、改、统计等操作。]]></description><category></category></item><item><title><![CDATA[数据库的范式]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/154352441</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/154352441</guid><author>2302_77477307</author><pubDate>Mon, 10 Nov 2025 22:26:34 +0800</pubDate><description><![CDATA[主属性是候选码的组成部分，主属性本身可能就是一个候选码（如果候选码是单属性），也可能是某个候选码的一部分（如果候选码是属性集）。主属性是所有候选码中包含的属性的总和，一个表可以有多个主属性。在选课表（学号，课程号，成绩）中,单独的 学号 或 课程号 都不能唯一标识一条记录，因为一个学生可以选多门课，一门课可以被多个学生选,但属性集 (学号，课程号) 可以唯一标识一个学生的一门课的成绩，因此它是这个表的唯一候选码。在学生表（学号，姓名，身份证号，班级）中,学号 可以唯一标识一个学生，是一个候选码。]]></description><category></category></item><item><title><![CDATA[聚集索引和非聚集索引]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/154242674</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/154242674</guid><author>2302_77477307</author><pubDate>Sat, 01 Nov 2025 21:27:37 +0800</pubDate><description><![CDATA[IO操作的效率很低，在大量数据存储中，查询时我们不能一下子将所有的数据全部加载到内存中，只能逐节点加载，如果采用平衡二叉树作为索引结构，那么磁盘的IO次数和索引树的高度是相关的，平衡二叉树由于树深度过大而造成IO读写过于频繁，进而导致效率低下。按照聚集索引排列顺序，查询显示一定范围数据的时候，由于数据都是紧密相连，数据库可以从更少的数据块中提取数据，节省了大量的IO操作。所有索引都是非聚集索引，所有索引的 B+Tree 的叶子节点存储的都是数据行在 .MYD 文件中的物理地址。索引文件：.MYI 文件。]]></description><category></category></item><item><title><![CDATA[网络爬虫介绍]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/151899192</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/151899192</guid><author>2302_77477307</author><pubDate>Fri, 26 Sep 2025 22:31:24 +0800</pubDate><description><![CDATA[一种无状态的（不会存储用户的信息，即本次请求响应和下一次的请求响应是没有关系的，不会发生数据传递），以请求\应答方式运行的协议，它使用可扩展的语义和自描述消息格式，与基于网络的超文本信息系统灵活的互动。在前面爬取'https://www.baidu.com'百度首页代码这个例子里，我们发现爬取的数据并不全，这是因为：请求头中有很多字段，其中user-agent字段是必不可少的，表示客户端的操作系统以及浏览器的信息。爬虫的作用：数据采集、软件测试、抢票、网络安全、web漏洞扫描。]]></description><category></category></item><item><title><![CDATA[一些模块及应用]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/151758971</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/151758971</guid><author>2302_77477307</author><pubDate>Wed, 17 Sep 2025 14:11:16 +0800</pubDate><description><![CDATA[用于和操作系统进行交互，通用操作包括：获取平台信息、对目录的操作、判断操作。]]></description><category></category></item><item><title><![CDATA[正则（二）：进阶]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/151285023</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/151285023</guid><author>2302_77477307</author><pubDate>Mon, 08 Sep 2025 14:35:55 +0800</pubDate><description><![CDATA[(ab)\numP<name>)P=name)search():扫描整个字符串并返回第一个成功匹配的对象，如果匹配失败，则返回Nonefindall():以列表形式返回整个字符串中所有匹配到的字符串，不需要通过group()提取sub():将匹配到的数据进行替换。sub(pattern,repl,string,count) pattern：正则表达式（代表需要被替换的，也就是字符串里面的旧内容）；repl：新内容；string：字符串；count：指定替换次数。]]></description><category></category></item><item><title><![CDATA[正则（一)：基础与使用]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/151250644</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/151250644</guid><author>2302_77477307</author><pubDate>Sun, 07 Sep 2025 12:32:31 +0800</pubDate><description><![CDATA[记录文本规则的代码，需要导入re模块。语法比较复杂，可读性较差，但通用性很强，适用于多种编程语言。步骤：导入re模块；使用match方法进行匹配操作，re.match()能匹配出以×××开头的字符串，如果起始位置没有匹配成功，返回None；如果上一步数据匹配成功，使用group()提取数据。match是从开始位置匹配，整体进行匹配，匹配不到就没有。]]></description><category></category></item><item><title><![CDATA[线程、进程、协程]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/151157052</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/151157052</guid><author>2302_77477307</author><pubDate>Sat, 06 Sep 2025 10:20:19 +0800</pubDate><description><![CDATA[线程是cpu调度的基本单位，每一个进程至少都会有一个线程，这个线程通常就是我们所说的主线程。进程是操作系统进行资源分配的基本单位，每打开一个程序至少就会有一个进程。一个进程默认有一个线程，进程里面可以创建多个线程，线程是依附在进程里面的，没有进程就没有线程。]]></description><category></category></item><item><title><![CDATA[迭代器、生成器]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/150980480</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/150980480</guid><author>2302_77477307</author><pubDate>Wed, 03 Sep 2025 20:26:32 +0800</pubDate><description><![CDATA[可迭代对象Iterable：可以用for...in...这类语句遍历读取数据的对象称之为可迭代对象，遍历是依次从对象中把一个个元素取出来的过程。可迭代对象的条件：对象实现了__iter__()方法；__iter__()方法返回了迭代器对象。isinstance():判断一个对象是否是可迭代对象或者是一个已知的数据类型。迭代器是一个可以记住遍历位置的对象，迭代器对象从集合的第一个元素开始访问，直到所有的元素被访问完结束，迭代器只能往前不会退后。]]></description><category></category></item><item><title><![CDATA[文件读写操作]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/150918829</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/150918829</guid><author>2302_77477307</author><pubDate>Fri, 29 Aug 2025 11:20:52 +0800</pubDate><description><![CDATA[open()：创建一个file对象，默认是以只读模式打开read(n)：n表示从文件中读取的数据的长度，没有传n值就默认一次性读取文件的所有内容write()：将指定内容写入文件close()：关闭文件文件名.name：返回要打开的文件的文件名，可以包含文件的具体路径文件名.mode：返回文件的访问模式文件名.closed：检测文件是否关闭，关闭就返回True。]]></description><category></category></item><item><title><![CDATA[面向对象编程（下）：单例模式与魔法方法]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/150764916</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/150764916</guid><author>2302_77477307</author><pubDate>Tue, 26 Aug 2025 21:48:16 +0800</pubDate><description><![CDATA[是一种常用的软件设计模式，该模式的主要目的是确保某一个类只有一个实例存在。当你希望在整个系统中，某个类只能出现一个实例时，单例模式就能派上用场。优点是可以节省内存空间，减少了不必要的资源浪费；弊端是多线程访问的时候容易引发线程安全的问题。有四种实现方式：通过@classmethod；通过装饰器实现；通过重写__new__()实现（重点）；通过导入模块实现。通过重写__new__()实现通过导入模块实现，在同一个模块中调用两次或者在不同的模块中分别调用，得到的内存地址都是一样的，所以模块是天然的单例模式。]]></description><category></category></item><item><title><![CDATA[面向对象编程（中）：封装、继承、多态]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/150502844</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/150502844</guid><author>2302_77477307</author><pubDate>Sun, 24 Aug 2025 23:20:39 +0800</pubDate><description><![CDATA[面向对象的三大特性：封装、继承、多态。]]></description><category></category></item><item><title><![CDATA[面向对象编程（上）：基础]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/150442942</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/150442942</guid><author>2302_77477307</author><pubDate>Mon, 18 Aug 2025 22:13:09 +0800</pubDate><description><![CDATA[面向过程是先分析出解决问题的步骤，再把步骤拆成一个个方法，是没有对象去调用的，通过一个个方法的执行解决问题。（需要实现一个功能的时候，重要的是过程，分析出一个个步骤，并把一个个步骤用一个个函数去实现，再依次去调用一个个函数即可，每一个步骤都需要自己亲力亲为）面向对象是将编程当成一个事物（对象），对外界来说，事物是直接使用的，不用去管内部的情况，而编程就是设置事物能做什么事情。（需要实现一个功能的时候，看重的是谁去帮我做这件事情。]]></description><category></category></item><item><title><![CDATA[闭包、装饰器]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/150360241</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/150360241</guid><author>2302_77477307</author><pubDate>Sat, 16 Aug 2025 10:55:42 +0800</pubDate><description><![CDATA[在嵌套函数（嵌套定义）的前提下，内部函数使用了外部函数的局部变量，而且外部函数的返回值是内部函数的函数名，我们就把使用了外部函数变量的内部函数称为闭包。每次开启内函数都在使用同一份闭包变量。使用闭包的过程中，一旦外函数被调用一次，返回了内函数的地址，虽然每次调用内函数会开启一个函数，但执行后就会消亡。]]></description><category></category></item><item><title><![CDATA[异常、模块与包]]></title><link>https://blog.youkuaiyun.com/2302_77477307/article/details/150105128</link><guid>https://blog.youkuaiyun.com/2302_77477307/article/details/150105128</guid><author>2302_77477307</author><pubDate>Tue, 12 Aug 2025 22:26:16 +0800</pubDate><description><![CDATA[首先创建一个Exception('××')对象，××是异常提示信息，然后用raise抛出这个异常对象。并没有打印出哈哈哈，因为抛出异常后代码不能继续往下执行了raise Exception("抛出一个异常")print("哈哈哈")funa()"""funa()raise Exception("抛出一个异常")Exception: 抛出一个异常"""用户输入密码，判断输入的长度是否大于等于6，如果输入的长度不足6位，就报错，即抛出自定义异常，并捕获该异常。]]></description><category></category></item></channel></rss>