python语言基础学习(二)
程序结构
顺序结构
选择结构
单分支
if 表达式:
语句块二分支
if 表达式:
语句块1
else:
语句块2多分支
if 表达式1:
语句块1
elif 表达式2:
语句块2
…
[else:
语句块n+1]练习:使用if多分支语句实现简单的算术运算,•支持+、-、*、/运算:
if __name__=='__main__':
input_op=input("请输入运算:(操作数何操作符之间用空格分隔)")
x,op,y=input_op.split()
if op=='+':
z=float(x)+float(y)
elif op=='-':
z=float(x)-float(y)
elif op == '*':
z=float(x)*float(y)
elif op == '/':
if y==0:
print("分母不能为零输入错误!!!")
else:
z=float(x)/float(y);
print("{}{}{}={}".format(x,op,y,z))
循环结构
while 语句
|
for语句
|
三个在循环语句中使用的关键字:
|
练习 使用while语句计算1~100的和(for循环时可以使用range函数):
|
练习 输出九九乘法表:
|
组合数据
列表
创建列表
1、使用[ ]运算符创建列表:
list1 = []
list2 = [1.25,21.06,0.3,4.7,58.1]
list3 = ["石油","汽车","建筑","IT"]
list4 = ['Alice’, 18, 'Beth’, 19]
2、使用list()函数创建列表
>>>list1 = list()
>>>list(("李白","杜甫","白居易"))
['李白', '杜甫', '白居易']
>>> list("素质重于能力重于学历")
['素', '质', '重', '于', '能', '力', '重', '于', '学', '历']
>>> list(range(5))
[0, 1, 2, 3, 4]访问列表
1、索引访问
2、切片访问
遍历列表
carList = ["奔驰", "大众", "福特", "宝马", "奥迪", "雪佛兰"]
for car in carList:
print(car,end=' ')添加列表元素
添加方法如下:
(1) list.append(newItem)
(2) list.insert(index, newItem)
(3) list.extend(seq)
(4) list[len(list):] = newList修改列表元素
删除列表元素
(1) del list[index]:删除索引为index的元素。
(2) list.pop():删除列表末尾的元素。
(3) list.pop(index):删除索引为index的元素。
(4) list.remove(item):删除列表元素item。
(5) list.clear():删除列表中所有元素。
(6) list[::] = []:对指定范围的列表元素进行删除。复制列表
1、直接复制 list_copy = list1
2、浅拷贝 使用list.copy(只对第一层实现深拷贝)
3、深拷贝 使用copy模块,copy.deepcopy()
|
- 删除列表
- 列表运算
|
列表统计
(1) len(list):返回列表list中的元素个数。
(2) max(list):返回列表list中元素的最大值。
(3) min(list):返回列表list中元素的最小值。
(4) sum(list):返回列表list中所有元素的和。
(5) list.count(key):返回关键字key在列表中的出现次数。列表查找与排序
1、查找函数
List.index(key)
2、排序函数
list.sort():对列表list中的元素按照一定的规则排序。
list.reverse():对列表list中的元素按照一定的规则反向排序。
sorted(list):对列表list 中的元素进行临时排序,返回副本。
元组
元组(Tuple)是写在()之间用逗号隔开的元素集合,元组创建后其中的元素不能修改
元组创建
使用()运算符创建元组
tuple1=() #创建空元组
tuple2=(1,8,24,65,125)#元素为数字
tuple3=("计算机","生物信息")#元素为字符串
tuple4=("华为","5564654",666)#元素为数字和字符串混合使用tuple()函数创建元组:tuple(sequence)
tuple("理想是人生的太阳")
('理', '想', '是', '人', '生', '的', '太', '阳')
tuple(range(1,6))
(1, 2, 3, 4, 5)
tuple(["莎士比亚","托尔斯泰","但丁","雨果","歌德"])
('莎士比亚', '托尔斯泰', '但丁', '雨果', '歌德')元组访问
通过元组名访问元组
通过tuple[index]访问指定索引为index的元组元素
元组切片(start:end:step)
遍历元组:for 变量 in 元组名
元组复制和删除
支持赋值语句直接复制
del删除元组
元组运算
元组运算包括+、in/not in 及关系运算符等,使用方法和列表中类似
wanyue_tuple=("柳永","晏殊")
haofang_tuple=("陆游","苏轼")
ci_author_tuple=wanyue_tuple+haofang_tuple
print("宋朝词人",ci_author_tuple)
print("李清照是宋朝词人吗?","李清照" in ci_author_tuple)
print("岳飞 出现三次的元组:",("岳飞")*3)
print("wanyue_tuple <ci_author_tuple?",wanyue_tuple<ci_author_tuple)元组统计
max()
min()
sum()
count()
len()
等和列表操作类似
pelltuple=(0,1,2,5,12,29,70,169,408,985)
print("最大值:",max(pelltuple))
print("最小值:",min(pelltuple))
print("所有元素的和:",sum(pelltuple))
print("元素%d在元组中出现的次数:%d.次"%(5,pelltuple.count(5)))
print("元组中的元素个数:%d个."%(len(pelltuple)))
字典:
用{}标识创建,字典是一个无序的“键(key):值(value)”对集合,键(key)必须使用不可便类型,如字符串、数字等,值(value)可以是简单数据或组合数据多种不同类型,在同一个字典中键(key)必须是唯一的,值可以不唯一
字典创建
使用{}运算符创建字典
使用dict()函数创建:
(1)dict(**kwarg):以关键字创建字典。**kwarg为关键字
(2)dict(mapping,**kwarg):以映射方式构造字典,mapping为元素的容器
(3)dict(iterable,**kwarg):以可迭代对象方式构造字典,iterable为可迭代对象
字典访问
通过字典名访问字典,通过“dict[key]”或”dict.get(key)”房屋指定元素
dict.itms():以列表形式返回字典中所有的“键/值”对,每个“键/值”对以元组的形式存在
dict.keys():以列表的形式返回字典中的所有键
dict.values():以列表形式返回字典中所有的值
for循环遍历字典中所有元素
dict={"猪肉":10,"羊肉":20,"牛肉":30}
for key,value in dict.items():
print(key,'/',value,end=" ")字典元素的添加、修改、删除
添加:
dict[key]=value #key不存在
修改:
dict[key]=value #key已存在
删除:
del dict[key]:删除关键字为key的元素
dict.pop(key):删除关键字为key的元素
dict.popitem():随机删除字典中的元素
dict.clear():删除字典中所有元素
字典复制和删除
赋值语句进行复制:源改新改
copy函数:源改新不改
deepcopy模块进行复制
del语句进行字典删除
这里和列表的拷贝类似
集合(set):
在{}之间,用逗号分隔无序且不重复的元素集合,不可以为集合创建索引或执行切片(slice)操作
没有键(key)可以用来获取集合中元素的值。
集合创建
python中可以使用{}运算符创建集合
set()函数创建集合,()可以传入字符串、列表、元组或range()函数的返回结果,使用list作为set函数参数可以将列表中的重复元素干掉
集合访问
使用集合名访问集合
for循环遍历集合中的元素
set.add(item)添加集合元素
set.update(item)更新修改集合元素
删除集合元素:
set.remove(item):删除指定元素item
set.discard(item):删除指定元素item
set.pop:随机删除集合中的元素
set.clear:清空集合列表
集合复制和删除
复制:
赋值语句复制
copy()函数赋值(浅复制)
deepcopy()模块赋值(深复制)
删除:
del语句删除
集合运算
(1) set1.union(set2) 或 set1 | set2:并集运算。
(2) set1.intersection(set2) 或 set1 & set2:交集运算。
(3) set1. difference(set2) 或 set1 - set2:差集运算。
(4) set1. issubset(set2) 或 set1 < set2:子集运算。
(5) item in set 或item not in set:成员运算。
集合统计
max()函数、min()函数、sum()函数、len()函数
嵌套组合数据
当组合数据中的元素为组合数据时,称为嵌套组合数据如嵌套列表中的元素是:列表、元素、字典、集合等,嵌套字典中的元素是:列表、字典、元组、集合。