![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Python 笔记(入门基础1)
文章平均质量分 90
python 基本语法,基础知识,
Zhao.Mr
精通Shell编程;对Mysql、Oracle、Postgresql等数据库有着丰富的管理经验,注重于实战操作,喜欢研究新技术;熟悉Python全栈开发;了解Hadoop各种组件及其应用
展开
-
第一章 初识 Python
1.1 python 简介 python是一种高级的面向对象编程语言,是一种面向对象的解释型计算机程序设计语言。特色之一是强制使用空白符作为语句缩进,同时具有丰富和强大的库,因此被称为胶水语言。python虚拟机是一种抽象层次更高的虚拟机。 python可运行在任何操作系统平台上,适用邻域广泛,尤其是现在超级火热的深度学习。1.2 Python API 文档原创 2020-07-20 21:08:32 · 228 阅读 · 0 评论 -
第二章 Python 语言基础(导入模块、变量、控制台)
2.1 Python 程序中的基本要素2.1.1 导入 Python 模块#导入math模块import mathprint(math.floor(20.6))#导入math模块中的sqrt函数from math import sqrtprint(sqrt(12))#导入math模块中的所有函数from math import *print(sin(3.14/2))2.1.2 声明变量 声明变量的同时必须为其赋值,赋值完原创 2020-07-20 21:43:10 · 262 阅读 · 0 评论 -
第二章 Python 语言基础(数字、获取用户输入、函数、注释、字符串)
2.2 数字 Python控制台可以直接输入用于计算的表达式,等价于一个计算器。2.2.1 基础知识 在Python语言中,数字分为整数和浮点数,整数没有小数点,浮点数含有小数点。不管分子和分母是整数还是浮点数,使用除法(/)的计算结果都是浮点数。整除运算符使用(//),例如1//2是0,2//2是1。如果分子或分母有一个是浮点数,则结果也是浮点数,例如1.0//2是0.0,2.0//2是1.0原创 2020-07-20 22:55:38 · 869 阅读 · 0 评论 -
第三章 条件、循环和其他语句(print、赋值、缩进、条件、循环、求值)
3.1 神奇的 print 函数 如果print函数传入多个参数,那木print函数会将所有参数的值首尾相接输出。默认的输出连接符号为空格(从第二个参数值开始),注意与字符串拼接的区别。# 默认空格连接print('u','f','o')# =之后自带空格print('x =','123')#不需要空格,则可以选择字符串拼接。print('u' + 'f' + 'o')#改变print函数的默认分隔符。print('u','f','o',原创 2020-07-21 10:52:55 · 499 阅读 · 0 评论 -
第四章 序列
4.1 定义序列 同一个序列,不仅可以包含相同数据类型值,还可以包含不同数据类型的值。name = ['uuu','fff','ooo']print(name)name = ['uuu','fff','ooo',123,123.456,False]print(name) 序列的元素如果是另外一个序列,那么就相当于一个二维或多维数组。# 由于子序列长度不一,所整体是锯齿形状的序列names原创 2020-07-21 11:47:13 · 924 阅读 · 0 评论 -
第四章 列表、元组
4.3 列表的基本操作 列表可以使用所有序列的操作,除此之外还有一些特有的操作。 列表元素赋值:修改列表中的前两个元素。s = ["Bill", "Mike", "John"]s[0] = "Mary"s[1] = 20print(s) # 运行结果:['Mary', 20, 'John'] 超过索引范围将会抛异常。原创 2020-07-21 11:47:33 · 246 阅读 · 0 评论 -
第五章 字符串(基本操作、格式化)
5.1 字符串的基本操作 序列的操作标准同样适用于字符串,但字符串却是只读的。s1 = "hello world"# 在字符串中使用索引print(s1[0]) # 获取s1的第1个字符,运行结果:hprint(s1[2]) # 获取s1的第3个字符,运行结果:l# 在字符串中使用分片print(s1[6:9]) # 获取s1从第7个字符往后的3个字符原创 2020-07-27 23:07:19 · 509 阅读 · 0 评论 -
第五章 字符串方法
5.3.1 center方法 center方法用于将一个字符串在一定的宽度区域居中显示,并在字符串的两侧填充指定的字符(只能是长度为1的字符串),默认填充空格。#使用center方法,在宽度30的区域居中显示,两侧区域填充空格print("<" + "hello".center(30) + ">")#使用format方法,在宽度30的区域居中显示,两侧区域填充空格print("<{:^30}>原创 2020-08-03 22:42:41 · 167 阅读 · 0 评论 -
第六章 字典方法
6.3 字典方法6.3.1 clear方法用于清空字典中的所有元素。dict = {“a”:1,”b”:2}dict.clear();print(dict)运行结果:{}# names1,names2都引用的是字典的地址,不会清空names2的元素。names1 = {"Bill":20, "Mike":30, "John":40}names2 = names1print(names2)names1 = {}print(names2)# 清空了字典的内容,字典的引用地址并没有原创 2021-04-25 17:23:11 · 161 阅读 · 0 评论 -
第六章 字典(创建、基本使用)
目前已经学习了列表(可读可写)和元组(只读)这两种数据结构,现在来学习一种特殊的数据结构也称为映射。字典中的值并没有特殊的顺序,但都存储在一个特定的键下,可以通过这个键找到对应的值。键可以是数字、字符串或者元组。6.1 为什么要引入字典 使用字典的查询速度与字典中的数据量无关。因此,字典非常适合根据特定的词语(键),查找与其对原创 2021-04-25 15:27:35 · 742 阅读 · 1 评论 -
第七章 函数
很多代码放在一个python文件中显然不合适。可以将代码根据功能不同放在不同的python文件中,然后通过导入模块的方式进行重用。不过由于导入模块时,python解析器会引用模块中的所有代码,但实际的情况中大多数只会引用某段代码。 从本质上说。函数就是将一段代码封装起来,然后被其他python程序重用。如果不主动调用函数,代码是不会执行的。既然其他函数要调用函数,那么就会涉及到数据交换,原创 2021-04-29 05:10:17 · 341 阅读 · 2 评论 -
第八章 类和对象
Python被称为面向对象语言,所以面向对象技术支持非常完整,例如,类、接口、继承、封装、多态等。8.1 对象的魔法对象可以看作数据以及可以操作这些数据的一系列方法的集合。为了区分全局函数,将这些写在类中的函数称为方法。想要访问这些类中的函数,必须要对类实例化,实例化后的产物被称为对象。实例化后,调用方法时需要先指定对象名称,然后才可调用这些方法。面向对象的三大特征:继承:当前类从其他类获得资源(数据和方法),以便更好的重用代码,并且可以描述类与类之间的关系。封装:对外部世界隐藏对原创 2021-05-01 01:25:28 · 164 阅读 · 2 评论 -
第九章 异常
9.1 异常python语言用异常对象来表示异常情况。当遇到错误后,会引发异常。如果异常对象没有处理异常,或未铺获异常,程序就会终止执行,并向用户返回异常信息。让程序抛出异常的情况有很多,但可以分为两大类:系统自己抛出的异常和主动抛出的异常。如果由于执行了某些代码(例如,分母为0的除法),系统会抛出异常,这种异常是系统自动抛出的。还有一种异常,是由于执行raise语句抛出的异常,这种异常是属于主动抛出的异常。9.2 主动抛出异常9.2.1 raise语句使用raise语句可以直接抛出异常。rais原创 2021-05-01 14:47:56 · 175 阅读 · 0 评论 -
第十章 方法、属性和迭代器
在python语言中,存在一些特殊的方法,这些方法往往在命名上与普通方法不同。例如,一些方法会在名字前后各加两个下划线,这种有特殊含义的命名方式,千万不要随意使用。这些方法会在特殊的情况下被调用。10.1 构造方法构造方法非常重要,是创建对象的过程中被调用的第一个方法,通常用于初始化对象中需要的资源,如初始化一些变量。class Person: # Person 类的构造方法 def __init__(self,name = "Bill"): print("构造原创 2021-05-03 04:17:28 · 149 阅读 · 1 评论 -
第十一章 正则表达式
文本处理被认为是编程中最常用的功能之一,例如,从一大堆HTML代码中找到href属性值为某个Url的a标签就是网络爬虫经常要做的工作。11.1 在python语言中使用正则表达式python语言通过标准库中的re模块支持正则表达式。11.1.1 使用match方法匹配字符串匹配字符串是正则表达式中最常用的一类应用。也就是设定一个文本模式,然后判断另外一个字符串是否符合这个文本模式。match方法用于指定文本模式和待匹配的字符串。该方法的前两个参数必须指定,第1个参数表示文本模式,第2原创 2021-06-17 00:01:49 · 298 阅读 · 0 评论 -
第十二章 常用模块
12.1 sys 模块sys 模块中一些重要的函数和变量 函数/变量 函数返回数据类型变量数据类型 描述 argv 列表 命令行参数,argv[0]表示脚本名称,argv[1]表示第1个命令行参数,以此类推 exit([arg]) None arg表示调用当前脚本的返回值,取值范围:0~255(无符号字节) modules 字典 当前已经装载模块的列表 path 列表 获取或设置搜原创 2021-06-19 23:06:26 · 199 阅读 · 0 评论 -
第十三章 文件和流
其实真正有价值的是让Python程序处理来自其他程序的数据,并存储和读取这些数据。13.1 打开文件open函数用于打开文件,通过该函数的第1个参数指定要打开的文件名(可以是相对路径,也可以是绝对路径)。f = open('test.txt ')f = open('./files/ test.txt')如果使用open 函数成功打开文件,那么该函数会返回一个TextIOWrapper对象,该对象中的方法可用来操作这个被打开的文件。如果要打开的文件不存在,则抛出FileNotFoun原创 2021-06-20 00:43:06 · 118 阅读 · 0 评论 -
第十四章 数据存储
如果要保存非常多的数据,而且要求快速被程序识别,甚至在海量数据中搜索到想要的数据,就要使用结构化的存储方式,而且要配有相应的处理引擎。Python通过模块支持了大量的数据存储和查找解决方案,如基于纯文本的JSON、XML、关系型数据库 MySQI、还有NoSQL、Excel等。14.1 处理 XML 格式的数据14.1.1 读取与搜索 XML 文件XML文件已经被广泛使用在各种应用中。尽管目前很多应用都不会将大量的数据保存在XML文件中,但至少会使用XML文件保存一些配置信息。在Pyth原创 2021-06-20 05:18:34 · 150 阅读 · 0 评论 -
第十五章 TCP与UDP编程
15.1 套接字套接字(Socket)是用于网络通信的数据结构。在任何类型的通信开始之前,都必须创建Socket。可以将它们比作电话插孔,没有它就无法进行通信。Socket主要分为面向连接的Socket 和无连接Socket。面向连接的Socket使用的主要协议是传输控制协议,也就是常说的TCP,TCP的Socket名称是SOCK_STREAM。无连接Socket的主要协议是用户数据报协议,也就是常说的 UDP,UDP Socket的名字是SOCK_DGRAM。15.1.1 建立 TCP原创 2021-06-21 02:17:42 · 241 阅读 · 1 评论 -
第十六章 网络高级编程
尽管大多数应用层协议都是基于TCP的,但除了编写像QQ服务器那样的服务端应用,很少直接使用 TCP Socket 进行编程。一般都编写基于应用层网络协议(HTTP、FTP等)的应用都是直接使用封装相应协议的模块,这样开发效率会更好。例如,如果要使用HTTP或HTTPS开发Python应用,可以使用urllib3、twisted以及其他类似的模块,FTP、SMTP、POP、IMAP等常用协议也有对应的Python模块。16.1 urllib3 模块urllib3 是一个功能强大,条例清晰,用原创 2021-06-24 00:25:07 · 1439 阅读 · 1 评论 -
第十七章 多线程
17.1 线程与进程17.1.1 进程计算机程序有静态和动态的区别。静态的计算机程序就是存储在磁盘上的可执行二进制(或其他类型)文件,而动态的计算机程序就是将这些可执行文件加载到内存中并被操作系统调用,这些动态的计算机程序被称为一个进程,也就是说,进程是活跃的,只有可执行程序被调入内存中才称为进程每个进程都拥有自己的地址空间、内存、数据栈以及其他用于跟踪执行的辅助数据。操作系统会管理系统中所有进程的执行,并为这些进程合理地分配时间。进程可以通过派生(fork或spawn)新的进程来执行其他任务,不过由于原创 2021-06-26 19:44:02 · 255 阅读 · 1 评论 -
第十八章 GUI库:tkinter
Python默认的GUI库Tk,通过Python的接口tkinter可以访问。Tk并不是PythonGUI库中最新和最好的,也没有包含最强大的GUI构建模块集,但Tk足够易用,可以使用Tk构建能够运行在大多数平台下的GUI应用。一个很好的参考网站:https://www.runoob.com/python/python-gui-tkinter.html18.1 tkinter 简介tkinter是Python的默认GUI库。它基于Tk工具包,该工具包最初是为工具命令语言( Tool Co原创 2021-06-27 17:54:08 · 870 阅读 · 0 评论 -
第十九章 GUI 库:PyQt5
PyQt是另外一套基于Python的GUI框架,目前最新版本是5,所以习惯上称为PyQt5。PyQt5 的功能要远比tkinter框架强大得多。其实PyQt只是用Python语言对QT做了一个封装,底层仍然是使用C++编写的QT核心图形库,所以PyQt在运行效率上非常高,编写的GUI程序与本地应用是完全一样的。标准的QT开发使用的是C++语言,开发效率比较低,而使用Python 语言进行封装后,开发效率也大大提升了,因此,PyQt 在开发效率和运行效率上都有一个非常好的表现,而且还可以进行可视原创 2021-07-05 00:20:54 · 9462 阅读 · 0 评论 -
第二十章 测试
性能分析性能是程序测试的一项重要指标,如果程序的bug大多已经排除,但程序的性能堪忧,轻者会降低用户体验,重者会造成系统资源大量消耗,甚至会导致程序的崩溃。所以在程序发布的最后阶段,对程序的性能进行检测和分析是必不可少的。在Python语言的标准库中已经内建了一些用于性能分析的模块,如profile模块就是用于性能分析的。通过profile模块中相应的API,可以得到Python程序中函数的调用次数、执行时间以及其他信息。import mathimport profiledef circleAre原创 2021-07-05 22:57:25 · 132 阅读 · 0 评论