Python编程 基础篇(一)

  • 一、变量和简单数据类型
    • 1.1 变量
    • 1.2 字符串
    • 1.3 数字
    • 1.4 注释
  • 二、列表
    • 2.1 列表
    • 2.2 添加、修改、删除元素
    • 2.3 组织列表
    • 2.4 索引超出范围
    • 2.5 遍历整个列表
    • 2.6 常见缩进错误反馈
    • 2.7 数字列表
    • 2.8 切片
    • 2.9 元组
    • 2.10 编码规范
  • 三、if语句
    • 3.1 条件测试
    • 3.2 相等和不相等
    • 3.3 其它关系
    • 3.4 检查多个条件
    • 3.5 检查特定值
    • 3.6 布尔表达式
    • 3.7 if语句形式
    • 3.8 使用if语句处理列表
    • 3.9 语句规范
  • 四、字典
    • 4.1 定义字典
    • 4.2 遍历字典
    • 4.3 嵌套

个人博客主页:https://www.boolo.top【本文博客同步地址】

本系列为Python编程基础的学习笔记。
本文主要介绍Python的变量、简单数据类型、列表、if语句和字典的相关基础知识。

一、变量和简单数据类型

1.1 变量

命令规则
变量名只能包含字母、数字和下划线,只能以字母或下划线开头,不能以数字开头;
变量名不能包含空格,但可以使用下划线来分隔其中的单词;
变量名不能是Python的关键字和函数名,即一些用于特殊用途的单词;
变量名应既简短又具有描述性;
变量名中慎用小写小写字母l和大写字母O,可能会被误看成1和0。

错误反馈
程序无法成功运行时,Python解释器会提供一个traceback,即一条记录,其中指出了解释器陷入困境的信息:

变量名称错误的两种常见情况:没有赋值或拼写错误。

1.2 字符串

字符串:在Python中,用引号括起来的都是字符串,其中的引号可以是单引号也可以是双引号。

大小写调整
title()方法:以首字母大写的方式显示每个单词,例:

print(message.title())

upper()方法:以全部大写的方式显示字符串,例:

print(message.upper())

lower()方法:以全部小写的方式显示字符串,例:

print(message.lower())

拼接
使用加号(+)来合并字符串,例:

full_name = first_name + " " + last_name

添加空白
制表符(\t)、换行符(\n)、空格。

删除空白
lstrip()方法:剔除字符串开头空白,例:

print(message.lstrip())

rstrip()方法:剔除字符串末尾空白,例:

print(message.rstrip())

strip()方法:剔除字符串两端空白,例:

print(message.strip())

要永久删除字符串中的空白,必须将操作结果存回到变量,例:

message = message.strip()

1.3 数字

整数
加(+)减(-)乘(*)除(/),使用两个乘号表示乘方运算,例:

3**2 == 9
3**3 == 27

浮点数
浮点数:Python将带小数点的数都称为浮点数。

非字符与字符转换
str()函数:将非字符串值表示为字符串值,例:

num = 123
message = "The number is" + str(num)
print(message)

输出结果为:The number is 123

1.4 注释

Python的注释使用井号(#)标注。

二、列表

2.1 列表

列表:由一系列元素按特定顺序排列而成,用方括号([])表示,列表元素用逗号空格(, )分隔,例如:

example = ['abcd', 'efgh', 'ijkl']

创建空列表

example = []

访问元素
按位置或索引来访问列表中的元素,列表元素的索引从0开始而不是1,例:

print(example[0])

访问列表中的最后一个元素使用索引-1,例如:

print(example[-1])

访问列表中的倒数第二个元素使用索引-2,例如:

print(example[-2])

以此类推……

2.2 添加、修改、删除元素

添加
append()方法:添加到列表末尾,例如:

example.append('test')

insert()方法:添加到列表任意位置,需指定索引和值,后面的元素都右移一个位置,例如:

example.insert(0, 'hello')

修改
指定表名和索引,然后指定新值,例如:

example[0] = 'hello'

删除
del语句:利用索引,可删除任何位置的元素,例如:

del example[0]

pop()方法:利用索引,可删除任何位置的元素并使用其值,例如:

element = example.pop(0)

无索引默认删除末尾元素,例如:

element = example.pop()

remove()方法:利用值,可删除第一个指定的值(多次出现需要循环),例如:

example.remove('test')

注意:将元素删除之后,后面的元素将会左移

2.3 组织列表

永久排序
sort()方法:永久性对列表元素进行排序,例如:

example.sort()

按反顺序排序传递参数reverse=True,例如:

example.sort(reverse=True)

临时排序
sorted()函数:临时性对列表元素进行排序,例如:

sorted(example)

倒打印
reverse()方法:永久性反转列表元素的排列顺序(与排序有差别),例如:

example.reverse()

求长度
len()函数:可求取列表长度(包含元素个数),例如:

length = len(example)

2.4 索引超出范围

2.5 遍历整个列表

利用for循环遍历列表,格式:
for 临时变量名 in 列表名:
例如:

examples = ['test1', 'test2']
for example in examples:print(example)

一般用单数式表示变量名,复数式表示列表名。
利用缩进来实现循环部分的多行代码,在for循环部分中想包含多少行代码都可以。

2.6 常见缩进错误反馈

忘记缩进:

不必要的缩进:

遗漏冒号:(特别注意这里容易遗漏)

2.7 数字列表

range()函数
从指定的第一个数开始生成一系列数字,到达指定的第二个数后停止,结果不包含指定的第二个数,格式:
for 临时变量名 in range(指定数一, 指定数二, 步长):
步长未指定时逐一生成数字,例如:

for num in range(1, 4):print(num)

输出结果为:
1
2
3

步长指定时按步生成数字,例如:

for num in range(1, 4, 2):print(num)

输出结果为:
1
3

list()函数
将参数给的一系列值转换为数字列表,格式:
列表名 = list(参数)
例如,当以range()函数生成的一系列值为其参数时:

nums = list(range(1, 4))
print(nums)

输出结果为:[1, 2, 3]

找出数字列表中最大值、最小值、总和
使用max()函数、min()函数、sum()函数。例如:

nums = list(range(1, 4))
print(max(nums))
print(min(nums))
print(sum(nums))

列表解析
将for循环和创建新元素的代码合并成一行,并自动附加新元素,格式:
列表名 = [表达式 给表达式提供值的for循环]
例如:

nums = [num-1 for num in range(1, 4)]
print(nums)

输出结果为:[0, 1, 2]

注意:这里的for循环没有冒号。

2.8 切片

切片:通过指定要使用的第一个元素的索引和最后一个元素的索引加1来处理列表中的部分元素。

特殊索引
未指定起始索引,从列表头元素开始;
未指定终止索引,到列表尾元素终止;
二者均没有指定,包含整个列表元素。
例如:

examples = ['test1', 'test2', 'test3']
print(examples[0:3])
print(examples[:1])
print(examples[1:])
print(examples[:])

输出结果为:
[‘test1’, ‘test2’, ‘test3’]
[‘test1’]
[‘test2’, ‘test3’]
[‘test1’, ‘test2’, ‘test3’]

拓展:可以使用负数索引按同样方式获取列表末尾的切片。

复制列表
同时省略起始索引和终止索引,即[:],例如:

examples = ['test1', 'test2', 'test3']
copy_examples = examples[:]

区分:不能直接使用copy_examples = examples,该种写法为将变量copy_examples关联到包含在examples中的列表,即:二者都指向同一个列表。

2.9 元组

元组:不可变的列表被称为元组,即其值不可被修改。与列表类似,只不过元组使用的是圆括号来标识,例如:

examples = ('test1', 'test2', 'test3')

当元组的元素被尝试修改:examples[0] = ‘test4’,将会报错:

当给存储元组的变量重新赋值:examples = (‘test4’, ‘test5’, ‘test6’),将不会报错。

2.10 编码规范

PEP 8(Python改进提案 8)建议
每级缩进都使用四个空格(使用制表符键实现,但插入的是空格而不是制表符,可在编辑器中设置);
每行代码不超过80个字符,每行注释不超过72个字符;
要将程序的不同部分分开,可使用空行。

三、if语句

3.1 条件测试

条件测试:每条if语句的核心都是一个值为True或False的表达式,这种表达式被称为条件测试。
当测试值为True时,执行代码;当测试值为False时,忽略代码。

3.2 相等和不相等

判断“相等”使用 == 而并非 = ;判断“不相等”使用 != 。
Python在检查是否相等时区分大小写,两个大小写不同的值会被视为不相等。若大小写无关紧要,可以利用小写转换来进行比较,例如:

example = 'TEST'
if example.lower() == 'test':print('True')

输出结果为:True

3.3 其它关系

大于、小于、大于等于、小于等于:>、<、>=、<=。

3.4 检查多个条件

and关键字:所有条件同时满足时表达式值为Ture,否则为False。
or关键字:所有条件同时不满足时表达值为False,否则为Ture。

3.5 检查特定值

判断特定值是否已包含在列表中,使用关键字in;判断特定值是否未包含在列表中,使用关键字not in。例如:

examples = ['TEST', 'test']
if 'test' in examples:print('True')
if 'Test' not in examples:print('True')

输出结果均为:True

3.6 布尔表达式

与条件表达式一样,其结果要么为Ture,要么为False,例如:

example1 = True
example2 = False

3.7 if语句形式

if语句

examples = ['TEST', 'test']
if 'test' inexamples:print('True')

if-else语句

examples = ['TEST', 'test']
if 'test' in examples:print('True')
else:print('False')

if-elif-else语句

example = 'TEST'
if example == 'test':print('True')
elif example == 'Test':print('True')
else:print('False')

注意:这里的elif根据实际情况可使用多次,最后的else代码块可以省略。

3.8 使用if语句处理列表

确定列表不为空
将列表名用在if语句中的条件表达式时,若该列表包含至少一个元素则返回True,若该列表为空时返回False。

3.9 语句规范

PEP 8建议:在==、>=、<=等比较运算符的左右两边各加一个空格,提高代码阅读性。

四、字典

4.1 定义字典

字典:一系列放在花括号{}中的键-值对。

键-值对是两个相关联的值,键与值之间用冒号(:)分隔,键-值对之间用逗号(,)分隔。通过键可以访问到与之相关联的值。任何Python对象都可以用作字典中的值。例如:

example = {'ID': 1, 'Name': 'test'}

访问字典中的值
使用键来访问对应值,例如:

example = {'ID': 1, 'Name': 'test'}
print(example['Name'])

添加键-值对
依次指定字典名、用方括号括起来的键和相关联信息,例如:

example = {'ID': 1, 'Name': 'test'}
example['Sex'] = 'man'

注意:字典是一种动态结构,可随时在其中添加键-值对。

定义空字典

example = {}

修改键-值对
依次指定字典名、用方括号括起来的键和相关联新值,例如:

example = {'ID': 1, 'Name': 'test'}
example['Name'] = 'TEST'

删除键-值对
使用del语句,并依次指定字典名、用方括号括起来的键,例如:

example = {'ID': 1, 'Name': 'test'}
del example['Name']

注意:此种方法键-值对将被永远删除。

多行字典
示例:

examples = {'example1': 1,'example2': 2,'example3': 3,}

4.2 遍历字典

遍历所有键值对
使用for循环+items()方法,例如:

for key, value in examples.items():print(key)print(value)

其中,变量key用于存储键,变量value用于存储值,二者变量名可随意。

注意:遍历返回的顺序和存储的顺序可能不同,Python并不关心字典的存储顺序,只追踪键-值之间的关联关系。

遍历所有键
使用for循环+keys()方法,例如:

for key in examples.keys():print(key)

其中,变量key用于存储键。当.keys()省略时,也将默认得到所有键而没有值。

注意:keys()方法返回的其实是一个包含字典中所有键的列表,因此可以实现按顺序遍历字典中的所有键,例如:

for key in sorted(examples.keys()):print(key)

遍历所有值
使用for循环+values()方法,例如:

for value in examples.values():print(value)

其中,变量value用于存储值。

注意:values()方法返回的其实是一个包含字典中所有值的列表,并没有考虑是否重复。

为了剔除返回列表中的重复项,可以使用集合(set)来表示:集合类似于列表,但是不存在重复的元素。例如:

for value in set(examples.values()):print(value)

4.3 嵌套

嵌套:将一系列的字典存储在列表中,或将一系列的列表作为值存储在字典中,称为嵌套。

在列表中存储字典
字典作为列表的元素存诸到列表当中,例如:

example1 = {'ID':1}
example2 = {'ID':2}
example3 = {'ID':3}
examples = [example1, example2, example3]

在字典中存储列表
列表作为字典的值存储到字典当中,例如:

example = {'ID': 1,'TEST': ['test1', 'test2', 'test3'],}

每当需要在字典中将一个键关联到多个值时,都可以在字典中嵌套一个列表。

在字典中存储字典
字典作为字典的值存储到字典当中,例如:

examples = {'example1': {'ID': 1,'TEST': ['test1', 'test2', 'test3'],},'example2': {'ID': 2,'TEST': ['test4', 'test5', 'test6'],},'example3': {'ID': 3,'TEST': ['test7', 'test8', 'test9'],},}

(未完待续…)

Python编程 基础篇(一)相关推荐

  1. Python编程基础篇

    python编程基础篇之第二节环境搭建和软件安装 文章目录 python编程基础篇之第二节环境搭建和软件安装 前言 一.python介绍 1. python简介 2. python的应用方向 3. p ...

  2. Python学习之旅(核心编程基础篇003运算符)

    Python学习之旅 Python核心编程基础篇2020.12.18 一.算数运算符 二.比较运算符 三.赋值运算符 四.逻辑运算符 五.成员运算符 六.身份运算符 七.三目运算符 八.运算符优先级 ...

  3. 微课|《Python编程基础与案例集锦(中学版)》第5章例题讲解(1)

    适用教材:<Python编程基础与案例集锦(中学版)>,董付国,应根球著,电子工业出版社 京东图书地址:https://item.jd.com/12571990.html 当当图书地址:h ...

  4. 微课|《Python编程基础与案例集锦(中学版)》第4章例题讲解(3)

    适用教材:<Python编程基础与案例集锦(中学版)>,董付国,应根球著,电子工业出版社 例4-10  把十进制数转换为其他进制形式. 例4-11  验证6174猜想. 例4-12.例4- ...

  5. 微课|《Python编程基础与案例集锦(中学版)》第4章例题讲解(2)

    适用教材:<Python编程基础与案例集锦(中学版)>,董付国,应根球著,电子工业出版社 例4-4 例4-5 例4-6 微课|中学生可以这样学Python(例4.3):百钱买百鸡 例4-7 ...

  6. 微课|《Python编程基础与案例集锦(中学版)》第4章例题讲解(1)

    适用教材:<Python编程基础与案例集锦(中学版)>,董付国,应根球著,电子工业出版社 例4-1 例4-2 例4-3 京东图书地址:https://item.jd.com/1257199 ...

  7. 微课|《Python编程基础与案例集锦(中学版)》第3章例题讲解(2)

    适用教材:<Python编程基础与案例集锦(中学版)>,董付国,应根球著,电子工业出版社 例3-6 微课|中学生可以这样学Python(例3.2):今天是今年的第几天 例3-7 例3-8 ...

  8. 微课|《Python编程基础与案例集锦(中学版)》第3章(1)

    适用教材:<Python编程基础与案例集锦(中学版)>,董付国,应根球著,电子工业出版社 例3-1 例3-2 例3-3:微课|中学生可以这样学Python(3.3节):多分支选择结构 例3 ...

  9. 微课|《Python编程基础与案例集锦(中学版)》第2章(2)

    适用教材:<Python编程基础与案例集锦(中学版)>,董付国,应根球著,电子工业出版社 例2-2 例2-3 例2-4 京东图书地址:https://item.jd.com/1257199 ...

  10. 微课|《Python编程基础与案例集锦(中学版)》第2章(1)

    适用教材:<Python编程基础与案例集锦(中学版)>,董付国,应根球著,电子工业出版社 ============= 本文是本书第一课视频,后面陆续录制和免费推送,本套视频不通篇讲解全书, ...

最新文章

  1. jQuery 事件方法大全
  2. tsinsen A1067. Fibonacci数列整除问题 dp
  3. 简单理解线程同步上下文
  4. Linux的 i2c 驱动框架分析
  5. linux 命令 空格转义,在Linux中,如何转义SCP复制路径中的空格?
  6. 使用Genymotion模拟器
  7. c语言求满足不等式的最小值,高手请进,请教一道简单的c语言题!
  8. 包含命名空间的xml反序列化 (1.7环境下)
  9. java复制文件的命名_java-复制文件时在文件名扩展名前附加“复...
  10. 这群程序员工作日竟然不用上班?
  11. win10误删的注册表能还原吗_win10电脑注册表修改后如何恢复
  12. 数值分析与算法——读书笔记(一)
  13. linux系统怎么改待机时间,LINUX操作系统——易用程度/待机时间/连接功能_手机_手机其它OS-中关村在线...
  14. 微信输入法,终于来了。。。
  15. 什么是APS系统?导入APS要注意什么?值得反复观看
  16. 内网渗透(五十二)之域控安全和跨域攻击-搭建和查看域信任关系
  17. 看历史杂志看历史杂志社看历史编辑部2022年第5期目录查阅
  18. 使用Qt常见报错及解决方案
  19. SQL 触发器-如何查看当前数据库中有哪些触发器
  20. RemoteViews完全解析

热门文章

  1. 《微电子概论》2.1 理论基础
  2. DGIOT物联网开源平台——腾讯云轻量应用服务器部署
  3. 基于C#和三菱PLC通过MX Component进行通信的具体方法
  4. android_adb pm和adb am +启动/杀死app进程
  5. 煤炭行业网络测试方案——RFC2544测试、网络监测、平台-基站-终端测试、安全测试
  6. Eclipse下SVN工具使用
  7. android studio 读取短信
  8. Flash Programer 给CC2530下载Hex文件 error解决办法 汇总
  9. QT界面无法显示中文
  10. FPGA按键消抖—两种按键消抖形式的对比