8. 这篇博客,把python从数值到模块、到字典、到元组,真python入门复习教程通览

举报
梦想橡皮擦 发表于 2021/09/28 20:31:41 2021/09/28
【摘要】 这篇博客无论你是否有编程基础,都可以顺利阅读,从数值到模块,一篇博客贯穿 Python 的基础知识如果你是滚雪球第四季看到的这篇博客,那么你可以快速阅读;如果你完全零基础,请提前安装好 python 环境即可阅读。@[toc] 算术运算符python 是一种编程语言的同时,自己也是一个程序,我们编写好的 .py 结尾的文件,就是通过 python 解释器翻译成可执行程序。任何程序都有输入与输...

这篇博客无论你是否有编程基础,都可以顺利阅读,从数值到模块,一篇博客贯穿 Python 的基础知识

  1. 如果你是滚雪球第四季看到的这篇博客,那么你可以快速阅读;
  2. 如果你完全零基础,请提前安装好 python 环境即可阅读。

@[toc]

算术运算符

python 是一种编程语言的同时,自己也是一个程序,我们编写好的 .py 结尾的文件,就是通过 python 解释器翻译成可执行程序。

任何程序都有输入与输出操作,因此程序可以看做是收集数据,加工数据,然后返回结果的一个模型。

从收集数据看,自然界最简单的就是数字,数字就不再特殊说明了,重点看一下 python 常用的算术运算符。

  • +:加法;
  • -:减法;
  • *:乘法;
  • /:除法;
  • %:取余;
  • **:乘方;

算术运算符的顺序与数学中内容保持一致,通过小括号 (),可以改变运算顺序。

变量

变量是 Python 中最重要的一个概念,它目的是为了将数据放入已经命名好的容器中,从而实现对不同数据的分类,而数学中的等号 =,在 python 中变成了赋值符,用来连接变量和数据。

变量名 = 变量值(数据)

变量部分初学阶段必记内容,就是命名规范,可以按照下述内容记忆。

字母、数字、下划线,数字不能放开头;
随时注意大小写,谨防保留关键字。

其实中文也可以作为变量名,只是写起来不方便,所以大家不要这么写。

橡皮擦 = 123
print(橡皮擦)

字符串

字符串应该是 python 中出镜率最高的知识点了,没有任何一段程序可以摆脱它。

字符串的声明很简单,通过引号(单双三引号)包裹即可。

学习字符串之后,需要了解 + 除了相加,还具备了连接符的含义,可以连接 2 个字符串。

同时在字符串部分,重点要掌握引号嵌套的问题,稍不注意就会出现 BUG。

字符串连接部分还存在一个知识点,字符串与数值连接,在很多编程语言中,数值会默认转换为字符串,但是 python 不支持此操作,如果你在数值与字符串中使用连接符,会出现类型错误异常 TypeError: can only concatenate str (not "int") to str

spam = "abc"
a = spam + 1
print(a)

解决办法非常简单,使用内置的 str 函数,将数字转换为字符串即可。

相应的将字符串转换为数字,也可以通过 intfloat 等内置函数实现。

万能列表

列表真的是 python 中的一大亮点,在 python 入门阶段如果你掌握了列表,后面学起来就轻松的一匹

列表是首次接触到的容器型的变量,它里面可以放任意其它类型,定义也是通过 [] 实现的,与一个盒子一样,每个元素之间使用逗号(,)进行分隔。

列表读取通过 列表名[索引] 实现,在这里初次接触索引的概念,需要知道它是从 0 开始计数的。

使用索引可以删除列表中的值,方法如下:

my_list = [1,2,3]
del my_list[0]

使用索引可以替换列表中的值,方法如下:

my_list = [1,2,3]
my_list[0] = 5

列表可以做切片,也是通过索引进行实现。

my_list = [1,2,3]
my_list[1:2]

列表也可以做加法,即使用连接符 +,与字符串一致,可以将两个列表进行拼接,此时你应该逐渐意识到字符串就是字符列表(在 python 中其实是个元组)。

从列表开始,你接触到的内置函数开始变多,例如 maxminsumlen 都开始使用。

在列表这里,你也将首次接触到 for 循环语句,而在学习循环语句之前,你必须要知道一个新的概念 序列,它们像列表一样,拥有多个元素,同时序列的英文单词 sequence 要牢牢记在脑中,虽然它不是很多关键字,但是好多地方你都能见到它。

for 语句的写法

for 循环变量 in 序列:
	循环内代码,一般操作循环变量

上述代码格式中存在以下几个注意事项:

  1. for 关键词和序列之间的变量叫做循环变量
  2. 循环变量与序列之间存在一个关键词 in
  3. 循环内代码一定要注意缩进,而该缩进值一般为一个 Tab 开始;
  4. for 所在行的末尾有个英文分号 :

从你这里开始,你要掌握缩进原则,在 python 中就是通过不同缩进来实现代码块。后续的分支,函数,类都将大量使用缩进。

for 循环相关知识点的学习过程中,你又将接触一个新的内置函数 range,该函数用于按照一定规则生成一个序列。

条件分支

在 python 中根据不同情况执行特定逻辑,就是分支语句,其关键字涉及 ifelseelif,最简单的语法格式如下:

if 条件表达式:
	满足条件的可执行代码

在学习条件分支之前的 python 程序,都是自上至下运行,通过条件分支可以改变这种流程,相应的概念就叫流程控制

前文涉及的 for 循环是重复执行特定代码块的流程,而 if 语句则是根据特定条件执行某代码块。

条件分支中涉及 2 个同步知识点,其一叫做条件表达式,其二叫做比较运算符。

常用的比较运算符如下:

  • ==:等于;
  • !=:不等于;
  • >:大于;
  • >=:大于等于;
  • <:小于;
  • <=:小于等于;
  • in:判定元素是否存在一个序列中。

条件表达式 是返回结果为 True 或者 False 的表达式,if 语句根据表达式的结果来判定是否执行代码块。

in 可以检索某个元素是否存在于某个序列中,例如检索字符串。

my_str = "abcdfdhfhaaa"
if "abc" in my_str:
    print("检查到相关元素")

如果条件表达式返回的结果为 False,此时执行 else 语句,如果出现多条分支情况,可以使用 elif 语句进行操作。

到此一个完整的条件分支语句如下所示:

if 条件表达式1:
	执行代码1
elif 条件表达式2:
	执行代码2
elif 条件表达式3:
	执行代码3
else:
	上述所有条件表达式都不满足,执行代码4

在学习条件表达式时,还会接触到一个概念,叫做逻辑运算符,它可以将多个条件表达式进行拼接。

  • and:逻辑与;
  • or:逻辑或;
  • not:逻辑非。

函数和模块

正式学习 python 没多久就会接触函数,而且一开始使用 print 就是输出函数,函数可以看成对外接收输入,内部进行加工,然后输出结果的一个黑盒子

函数涉及的概念包括,函数的声明(也叫定义),函数的调用,函数的参数,函数的返回值,函数相关作用域问题。

函数定义的方法:

def 函数名():
	函数内部代码

函数命名规则与变量一致,一般情况下大家使用全部小写字母为函数命名,常见的技巧可以采用动宾结构的单词组合,例如 do_something

函数的参数包括普通参数,默认参数,可选参数,关键字参数等内容,这些在学习过程中需要重点学习,不过初期阶段不一定完全掌握。

安装好了 python 环境之后,就默认拥有了很多内置(build in )函数,在前文提及的 intstrmax 都属于内置函数。

模块的导入

python 的一个强大之处是提供了非常多的模块,用于扩展 python 功能,模块导入使用关键字 import 实现。

3 中模块导入的方式

# 直接导入
import random
# 导入模块并重命名
import pyquery as pq
# 使用 from 导入模块指定内容
from lxml import etree

不建议使用 from 模块名 import *,该方式产生的副作用比较大。

python 字典,集合,元组

字典较于列表,可以理解为给列表中的每个元素都贴上了专属的标签,因此获取字典中的元素,可以直接通过标签获取。

字典也叫做键值对,定义的方法如下:

my_dict = {1:1,2:2}

键与值之间用冒号 : 分隔,各个元素之间用逗号 , 分隔。

字典使用代替索引来管理元素,所以在取值时,直接通过 my_dict[键名] 即可。

在字典中如果使用不存在的键,就会引发异常,但是可以给不存在的键进行赋值,该操作相当于给字典增加元素。

python 中的集合

集合涉及的关键字是 set,在 python 集合中不存在重复的元素,由于这一点的存在,集合中不能放置列表与字典,因为列表与字典中的元素是会发生变化的,很容易导致出现重复元素,相应的集合本身也不能被放置到集合中。

set 集合不能使用索引获取元素,如果使用会出现如下错误:

TypeError: 'set' object is not subscriptable

集合涉及的运算

  • |:并集,将两个集合合并到一起,没有重复元素;
  • -:差集,从前集合中删除后集合元素;
  • &:交集,获得两个集合的相同元素;
  • ^:异或,删除两个集合中相同的元素;

python 元组

元组就像是一个特殊化的列表,它不能修改被定义之后的内部元素。

定义元组使用小括号 () ,定义一个只包含一个元素的元组,需要在元素右侧额外增加一个逗号 (1,)

元组由于不可变性,故其可应用为字典的键,集合的元素,从而实现很多扩展功能。

while 循环

除了 for 循环外,python 中还存在 while 循环,在 while 循环中不能添加序列,也没有循环变量,仅包含条件表达式。

while 条件表达式:
	循环内代码

在 python 中是不存在其它语言 do...while 循环的。

break 与 continue

通过 break 关键字可以终止循环,而使用 continue 关键字可以跳出本次循环,进入下一次的循环中。

循环中使用 else

forwhile 循环语句中,也可以使用 else 语句,该语句表示循环执行结束之后需要执行的代码。

for i in range(1, 100):
    print("输出", i)

else:
    print("99 次循环,输出完毕")

在循环语句中如果出现 break,那此时的 else 不会被执行到。

for i in range(1, 100):
    print("输出", i)
    if i > 50:
        break

else:
    print("99 次循环,输出完毕")

写在后面

以上内容就是本文的全部内容。

今天是持续写作的第 224 / 365 天。
可以关注点赞评论收藏

更多精彩

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。