Python基础教程(第3版)中文版 第5章 条件、循环及其他语句(笔记)

简介: Python基础教程(第3版)中文版 第5章 条件、循环及其他语句(笔记)

                    第5章 条件、循环及其他语句

1.print 和 import

print

打印多个参数(,分隔)自动添加空格 ;

+ 合并字符串 ;

seq参数 自定义分隔符

import

 导入时重命名(as

 如:from math import sqrt as foobar

     foobar(4)


2.赋值魔法

1.同时赋值:

x,y,z = 1,2,3

x,y = y,x #这会交换x,y的值

这种操作称为序列解包:将一个序列解包,并将得到的值存储到一系列变量中。

要解包元素必须和左边的目标个数相同

使用*收集多余的值,就不用确保个数相同:

a,b, *rest = [1,2,3,4]

#1.*变量的位置任意,2.带*的变量将包含列表

2.链式赋值

x = y = func()

#等价 y = func()

     x = y

3. 增强赋值(复合赋值)

x += 1

x *= 2


3. 代码块

代码块是一组语句。代码块使用缩进代码来创建。

同一代码块中,各行代码的缩进量必须相同。

4.条件和条件语句

1.bool 值

bool 表达式 视为假值的有:

False None 0 "" () [] {}

除此之外皆是真值

2.if语句(有条件地执行)

3.else子句

4.elif子句(else if)

5.代码块嵌套(把if语句放在其他if语句中)


6.更复杂的条件

1.比较运算符

除了常见的< > == 等等

还有is, is not, in , not in

#不同与C,python支持链式比较:如:0<x<100

2.布尔运算符

and  or not

#和C类似,python也存在逻辑短路现象


7.断言assert

5.循环

1.while循环

2.for循环

为序列执行代码块:

words = ['this', 'is', 'an', 'ex', 'parrot']

for word in words:

print(word)

创建范围的内置函数 range()


3.迭代字典

for key, value in d.items():

print(key, 'corresponds to', value)


4.一些迭代工具

1.并行迭代,内置函数zip 将两个序列缝合起来,返回元组组成的序列。

2.迭代时获取索引 enumerate

for index, string in enumerate(strings):

if 'xxx' in string:

strings[index] = '[censored]'

3.反向迭代和排序后迭代

reversed 和 sorted


5跳出循环

1.break   跳出迭代(本层)

2.continue 结束当前迭代(本次)


6.循环中的else语句

6.简单推导

列表推导是一种从其他列表创建列表的方式。

[x*x for x in range(10)]

添加条件

[x*x for x in range(10) if x%3 == 0]

字典推导

>>> squares = {i:"{} squared is {}".format(i, i**2) for i in range(10)}

>>> squares[8]

'8 squared is 64'


7.pass del 和 exec

1.什么都不做pass

2.del 删除(通常python会自动做)

3.exec 将字符串作为代码执行

       给exec添加第二个参数--字典,用作其命名空间

       from math import sqrt

       >>> scope = {}

       >>> exec('sqrt = 1', scope)

 eval 计算字符串表示的值

         也能传给它第二个参数做命名空间


第5章出现的函数:


chr(n) 返回一个字符串,其中只包含一个字符,这个字符对应于传入的顺序值n(0 ≤n < 256)

eval(source[,globals[,locals]]) 计算并返回字符串表示的表达式的结果

exec(source[, globals[, locals]]) 将字符串作为语句执行

enumerate(seq) 生成可迭代的索引值对

ord(c) 接受一个只包含一个字符的字符串,并返回这个字符的顺序值(一个整数)

range([start,] stop[, step]) 创建一个由整数组成的列表

reversed(seq) 按相反的顺序返回seq中的值,以便用于迭代

sorted(seq[,cmp][,key][,reverse]) 返回一个列表,其中包含seq中的所有值且这些值是经过排序的

xrange([start,] stop[, step]) 创建一个用于迭代的xrange对象

zip(seq1, seq2,...) 创建一个适合用于并行迭代的新序列


相关文章
|
13天前
|
IDE 测试技术 项目管理
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
PyCharm是由JetBrains开发的Python集成开发环境(IDE),专为Python开发者设计,支持Web开发、调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试和版本控制等功能。它有专业版、教育版和社区版三个版本,其中社区版免费且适合个人和小型团队使用,包含基本的Python开发功能。安装PyCharm前需先安装Python解释器,并配置环境变量。通过简单的步骤即可在PyCharm中创建并运行Python项目,如输出“Hello World”。
130 12
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
|
1天前
|
JSON 数据可视化 API
Python 中调用 DeepSeek-R1 API的方法介绍,图文教程
本教程详细介绍了如何使用 Python 调用 DeepSeek 的 R1 大模型 API,适合编程新手。首先登录 DeepSeek 控制台获取 API Key,安装 Python 和 requests 库后,编写基础调用代码并运行。文末包含常见问题解答和更简单的可视化调用方法,建议收藏备用。 原文链接:[如何使用 Python 调用 DeepSeek-R1 API?](https://apifox.com/apiskills/how-to-call-the-deepseek-r1-api-using-python/)
|
2月前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
81 8
|
2月前
Seaborn 教程-主题(Theme)
Seaborn 教程-主题(Theme)
144 7
|
2月前
|
Python
Seaborn 教程-模板(Context)
Seaborn 教程-模板(Context)
54 4
|
2月前
|
数据可视化 Python
Seaborn 教程
Seaborn 教程
61 5
|
3月前
|
开发工具 Python
[oeasy]python043_自己制作的ascii码表_循环语句_条件语句_缩进_indent
本文介绍了如何使用Python制作ASCII码表,回顾了上一次课程中`print`函数的`end`参数,并通过循环和条件语句实现每8个字符换行的功能。通过调整代码中的缩进,实现了正确的输出格式。最后展示了制作完成的ASCII码表,并预告了下一次课程的内容。
35 2
|
2月前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
2月前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。