Python基础第二课 数据结构 Python中的运算符 Python表达式和语句

github博客传送门
csdn博客传送门

数据结构 列表list 元组tuple 集合set 字典dict
运算 运算符 控制流语句(if while for break continue)

列表(list)

我们创建一个列表list用于存放HELLO:

list=['H','E','L','L','O']  

他的 下标/索引 如图所示:
Python基础第二课
数据结构
Python中的运算符
Python表达式和语句

如果我们要访问list里的元素可以这样访问:

# 查询元素 直接访问列表的 下标/索引
print (list[0])    # 输出 H  
print (list[1])    # 输出 E  
print (list[2])    # 输出第一个 L  
print (list[3])    # 输出第二个 L  
print (list[4])    # 输出 O  
print (list[5])    # !注意这里会报错,因为总共只有五个元素。  

如果我们要在list里添加元素:

# 增加元素 append()
list.append('需要增加的内容')    # 现在列表里的元素是['H','E','L','L','O','需要增加的内容']  
list.append('W')    # 增加了 W  
list.append('O')    # 增加了 O  
list.append('R')    # 增加了 R  
list.append('L')    # 增加了 L  
list.append('D')    # 增加了 D  
print (list)    # 输出:['H','E','L','L','O','需要增加的内容','W','O','R','L','D']

大家可能发现了append是将元素添加到list末尾
接下来我们学习一个我们可以将元素放到任何位置的方法:

# 插入元素 insert()
list.insert(5,'我在需要增加的内容前面')    # 在下标为5的位置插入了 '我在需要增加的内容前面'  
print (list)    # 输出:['H','E','L','L','O','我在需要增加的内容前面','需要增加的内容','W','O','R','L','D']  
# insert的其他特性自行测试

接下来我们学习如何修改一个元素:

# 修改元素 访问元素的 下标/索引 并赋值
list[5] = '稍会删除我,我的下标是5'    # 将下标为 5 的元素修改为 '稍会删除我,我的下标是5'  
list[6] = '稍会删除我,我的下标是6'    # 将下标为 6 的元素修改为 '稍会删除我,我的下标是6'  
print (list)  # 输出:['H','E','L','L','O','稍会删除我,我的下标是5','稍会删除我,我的下标是6','W','O','R','L','D']  

接下来我们学习根据 下标/索引 删除一个元素:

# 删除元素 del语句 条件是知道索引
del list[5]    # 删除了下标是 5 的元素  
del list[6]    # 删除了下标是 6 的元素  
print (list)   # 输出:['H','E','L','L','O','W','O','R','L','D'] 

接下来我们学习根据值删除一个元素:

# 删除元素 remove()
list.remove('H')    # 删除了值为'H'的元素  
list.remove('E')    # 删除了值为'E'的元素  
list.remove('L')    # 删除了值为'L'的元素  
list.remove('L')    # 删除了值为'L'的元素  
list.remove('O')    # 删除了值为'O'的元素  
print (list)        # 输出:['W','O','R','L','D'] 

列表的最后我们学习一下怎样求一个列表的长度:

# 求列表的长度 len()
print len(list)    # 输出 5 因为有5个元素 W O R L D 所以输出 5

元组(tuple)

Python的元组与列表类似,不同之处在于元组不能 添加 删除 修改。

# 尝试修改元组
# 我们先创建一个元组
num = (66,88)    # 创建了一个元组 有两个元素 66 和 88
# 尝试添加
num.append(11)   # 尝试添加元组元素 11 会报错 不能添加
# 尝试删除
del num[0]       # 尝试删除元组元素 下标/索引 为0的元素 会报错 不能删除
# 尝试修改
num[0] = 1       # 尝试修改元组 下标/索引为0的元素的值为 1 会报错 修改不成功

正确的修改元组方式就是重新赋值给存放元组的变量:
如果你想要修改元组:

# 我们先创建一个元组
num = (66,88)    # 创建了一个元组 有两个元素 66 和 88  
print (num)      # 输出: (66,88)
# 修改元组 只能重新给 元组的变量重新赋值
num = (11,22,33,44)    # 重新给变量 num 赋值了一个新的元组值  
print (num)      # 输出: (11,22,33,44)

查询元组

# 我们先创建一个元组
num = (66,88)    # 创建了一个元组 有两个元素 66 和 88  
print (num[0])   # 输出: 66  
print (num[1])   # 输出: 88  
# 和列表的查询方式一致

集合(set)

集合(set)是一个无序不重复元素的序列
主要作用:
一、去重,把一个列表变成集合,就自动去重了。
二、关系测试,测试两组数据之间的交集,差集,并集等关系。

# 我们先创建个集合
set1 = set('aabcde')  
set2 = set('cdefgg')  
print (set1) # 输出:set(['a', 'c', 'b', 'e', 'd']) 随机无序列  并且去重 a  
print (set2) # 输出:set(['c', 'e', 'd', 'g', 'f']) 随机无序列  并且去重 g  

# 也可以这样创建集合 注!不能用第二种方法创建空集合
set3 = {'tom', 'jim', 'Mary'}  
set4 = {'tom', 'jack', 'rose'}  
print (set3)  # 输出:set(['jim', 'Mary', 'tom'])  随机无序列  
print (set4)  # 输出:set(['rose', 'jack', 'tom'])  随机无序列  

计算 set1 和 set2 集合的 差集 并集 交集 异或集

print (set1 - set2)    # 差集输出:set(['a', 'b'])  
print (set2 - set1)    # 差集输出:set(['g', 'f'])  
print (set1 | set2)    # 并集输出:set(['a', 'c', 'b', 'e', 'd', 'g', 'f'])  
print (set1 & set2)    # 交集输出:set(['c', 'e', 'd'])  
print (set1 ^ set2)    # 异或集输出:set(['a', 'b', 'g', 'f'])  

集合常用操作

s = set([1,2,3,4])    # 创建一个数值集合  
t = set('hello')      # 创建一个唯一字符的集合  
t.add('x')            # 添加一个元素  
s.update([10,22,33])  # 在 s 集合中添加多项  
t.remove('h')         # 删除一个元素  
len(s)                # 集合的长度

字典(dict)

在Python中,字典是一系列键值对.每个键都与一个值相关联,你可以使用键来访问与之相关的值.与键相关联的值可以是数字,字符串,列表乃至字典.事实上,可以将任何Python对象用作字典中的值.
在Python中,字典用放在花括号{}中的一系列 键:值 对表示.例:

dict1 = {'姓名':'张三','性别':'男','年龄':18} # 创建好了一个字典  
# 访问字典的值 可以依次指定字典名和放在方括号内的键 如:  
print (dict1['姓名'])    # 输出: 张三  
print (dict1['性别'])    # 输出: 男  
print (dict1['年龄'])    # 输出: 18  
print dict1    # 输出: 姓名:张三, 性别:男, 年龄:18

添加 键:值对 的方法.

# 添加 键:值
dict1['学校'] = '北大'  
print dict1    # 输出: 姓名:张三, 性别:男, 年龄:18, 学校:北大

删除 键:值对 的方法

# 删除 键:值  del 字典名['键的值'] 例:
del dict1['学校']  
print dict1    # 输出: 姓名:张三, 性别:男, 年龄:18

创建一个空的字典

dict2 = {}    # 创建了一个空的字典  
dict2['张三':60]    # 添加了一对 键:值对   
dict2['color':'blue']    # 添加了一对 键:值对 

Python中的运算符

算数运算符

print (4+7)    # 输出: 11  两数之和  
print (4-7)    # 输出: -3  两数之差  
print (7-4)    # 输出: 3   两数之差  
print (4*7)    # 输出: 28  两数之积  
print (4**7)   # 输出: 16384  求4的7次方    
print (4/7)    # 输出: 0.42857...  求商  
print (4/7)    # 输出: 2.33333...  求商  
print (9%4)    # 输出: 1   取余 取余数  
print (7%4)    # 输出: 3   取余 取余数  
print (4//7)    # 输出: 0   取整 取整数  
print (7//4)    # 输出: 1   取整 取整数  

比较运算符

==, >, <, >=, <=, !=  
==    # 判断 == 两边是否相等 相等返回True 否则返回Flase  
>     # 判断 > 左边 是否大于 右边 大于返回True 否则返回Flase  
<     # 判断 < 左边 是否小于 右边 小于返回True 否则返回Flase
>=    # 判断 >= 左边 是否大于等于 右边 大于等于返回True 否则返回Flase  
<=    # 判断 <= 左边 是否小于等于 右边 小于等于返回True 否则返回Flase  
!=    # 判断 != 左边 是否不等于 右边 不等于返回True 否则返回Flase

赋值运算符

=, +=, -=, *=, **=, /=, %=, //=  
=            # 将 = 右边 的值赋给 左边 的变量 例:  
a = 4        # 给变量 a 赋值 4  
print (a)    # 打印 a 将输出: 4  
+=           # 将 += 两边的 值相加 再赋给左边的变量  
b = 4        # 给变量 b 赋值 4  
b += 2       # 相当于 b = b + 2 即输出: 6  
-=           # 将 -= 左边的值 减去右边的值 再赋给左边的变量  
c = 4        # 给变量 c 赋值 4  
c -= 1       # 相当于 c = c - 1 即输出: 3  
*=           # 同理上面的 加减赋值运算符 自行测试  
/=           # 同理上面的 加减赋值运算符 自行测试  
%=           # 同理上面的 加减赋值运算符 自行测试  
//=          # 同理上面的 加减赋值运算符 自行测试  

逻辑运算符

and    # 与  
or     # 或  

位运算符

&    # 与  
|    # 或  
^    # 异或  

Python表达式和语句

if控制流 判断语句

if
Python基础第二课
数据结构
Python中的运算符
Python表达式和语句

# 例:
sex = '男'  
if sex == '男':    # 如果性别为 男 则输出 进男厕所
    print ('进男厕所')
# 无论前面判断是否正确 程序结束这句始终执行
print ('程序结束')

执行结果

进男厕所
程序结束

if else
Python基础第二课
数据结构
Python中的运算符
Python表达式和语句

# 例:
sex = '女'  
if sex == '男':    # 如果性别为 男 则输出进入男厕所
    print ('进男厕所')
else:              # 否则进入女厕所
    print ('进女厕所')
# 无论前面判断是否正确 程序结束这句始终执行
print ('程序结束')

执行结果

进女厕所
程序结束

if elif elif else
Python基础第二课
数据结构
Python中的运算符
Python表达式和语句

# 例:
sex = '小孩'  
if sex == '男':
    print ('进男厕所')
elif sex == '女':
    print ('进女厕所')
else:
    print ('性别错误')
# 无论前面判断是否正确 程序结束这句始终执行
print ('程序结束')

执行结果

性别错误
程序结束

while控制流 循环语句

Python基础第二课
数据结构
Python中的运算符
Python表达式和语句

# 例:
flag = 3  
while flag > 0:  
    print ('hello')  
    flag -= 1  
print ('循环结束')

执行结果

hello
hello
hello
循环结束

for控制流 循环语句

使用for来遍历序列:
格式:
for 变量 in 序列:

# 例:
num = [1,2,3,4,5,6,7]  
for i in num:  
    print (i)  
print ('循环结束')

执行结果

1
2
3
4
5
6
7
循环结束

break 跳出循环语句

break语句用来终止所在的循环语句

# 例:
for x in ['A', 'B', 'C']:  
    for y in ['1', '2', '3']:  
        print (x+y)  
        break

执行结果

A1
B1
C1

continue 跳出循环语句

continue语句用来跳出所在循环体的本次循环

# 例:
for x in ['A', 'B', 'C']:  
    for y in ['1', '2', '3']:  
        if x == 'B':
            continue
        print (x+y)

执行结果

A1
A2
A3
C1
C2
C3