python初级:基础知识学习-循环、列表、元组、集合、字典

python初级:基础知识学习-循环、列表、元组、集合、字典

一、循环

1.for循环

for循环需要用在循环次数与循环条件明确的时候使用,否则用while

2.for循环相关

(1)range()

range(start, end, step)
python解释器中内建(自带)的一个操作,可以直接产生从start数字开始,到end数字

(2)enumerate()

将一串数据中的每个数据进行编号(从0开始),方便目标数据

name="tianxiu"
for i,x in enumerate(name):
    print(i,x)
0 t
1 i
2 a
3 n
4 x
5 i
6 u

二、列表

列表是组合数据类型中的一种,可以存放多个、有顺序的、可以重复的、可以是不同数据类型的数据

1.列表创建

# 声明空列表
names1 = []
names2 = list()
print(names1, names2)#[] []

2.列表的索引和切片

切片语法:
lst[start, end, step]
	start:开始切片的位置(包含)
	end:结束切片的位置(不包含)
	step:间隔数据个数

(1)顺序切片

names1 = list(["李白", "李元芳", "凯", "露娜", "达摩","天秀"])
print(names1[1:3])#['李元芳', '凯']

(2)间隔位置切片

names1 = list(["李白", "李元芳", "凯", "露娜", "达摩","天秀"])
print(names1[1::2])#['李元芳', '露娜', '天秀']

(3)倒叙,按循序切片

names1 = list(["李白", "李元芳", "凯", "露娜", "达摩","天秀"])
print(names1[-2:])#['达摩', '天秀']

(4)列表旋转

names1 = list(["李白", "李元芳", "凯", "露娜", "达摩","天秀"])
print(names1[::-1])#['天秀', '达摩', '露娜', '凯', '李元芳', '李白']

3.列表的常规操作

names1 = list(["李白", "李元芳", "凯", "露娜", "达摩","天秀"])
print(names1[4:2:-1])#['达摩', '露娜']

(1)增

语法:
List.append(数据):列表的末尾追加一个数据
List.insert(位置, 数据):列表指定的位置插入一个数据
List.extend([一组数据]):列表的末尾追加多个数据

(2)删

List.remove(数据):删除某个指定的数据
List.pop():删除末尾的一个数据
List.pop(索引):删除索引位置的一个数据
List.clear():清空列表中所有数据(列表还在)
del List:删除列表(列表不在了)

(3)改

List[索引] = 新的数据:就可以将索引位置的数据进行修改

(4)其他

len(L): 获取列表中数据的个数
L.reverse():翻转列表
L.sort():对列表中的所有数据进行自然排序

3.列表的扩展:推导式列表

根据给定的数据,按照一定条件将数据组成新的列表

(1)列表与for与in连用

从固定列表中得到列表元素的单一位置成分

list = [[1,2,3], [4,5,6], [7,8,9]]
#提出147
t0=[x[0] for x in list]
print(t0)
#[1, 4, 7]

(2)列表与for与in、range连用

需要提出有循序关系的元素列表属性

list = [[1,2,3], [4,5,6], [7,8,9]]
#提出[1,5,9]
t0=[list[x][x] for x in range(0,len(list))]
print(t0)
#[1, 5, 9]

(3)双for循环

利用for循环增加选择条件

#每半个小时打印一次
t=[str(x)+":"+str(y) for x in range(0,24) for y in range(0,59,30)]
print(t)
#['0:0', '0:30', '1:0', '1:30', '2:0', '2:30', '3:0', '3:30', '4:0', '4:30', '5:0', '5:30', '6:0', '6:30', '7:0', '7:30', '8:0', '8:30', '9:0', '9:30', '10:0', '10:30', '11:0', '11:30', '12:0', '12:30', '13:0', '13:30', '14:0', '14:30', '15:0', '15:30', '16:0', '16:30', '17:0', '17:30', '18:0', '18:30', '19:0', '19:30', '20:0', '20:30', '21:0', '21:30', '22:0', '22:30', '23:0', '23:30']

三、元组

元组用在项目中的一些固定数据的声明上,在工程开发过程中为了保证一些特定数据不被误操作修改导致项目出现问题,可以选择使用元组来强制约束固定的数据

1.元组创建

t1=tuple()

四、集合

集合是Python中组合数据类型的一种,python语法中使用关键字set表示集合中可以存放没有顺序的、不能重复的、可以是不同数据类型的多个数据。可以利用对数据进行去重操作
集合中不能存放重复的数据,添加到集合中的每个数据都会记录这个数据的一个整数哈希值,新增数据时首先获取新数据整数哈希值,然后使用新数据的整数哈希值和已经存在的所有数据的整数哈希值进行等值判断,如果相等说明这个数据已经在集合中存在了所以不允许添加,如果不相等说明这个数据在集合中不存在可以添加。

1.集合创建

t1=set()
#显示虽然为{}。但是{}无法声明空集合

2.单集合操作

add(obj):向集合中增加一个数据
discard(obj):删除集合中的一个指定数据(如果数据不存在什么都不做)
remove(obj):删除集合中的一个指定数据(如果数据不存在就报错)
pop():随机删除集合中的一个数据
clear():清空集合中的数据
copy():复制一个集合

五、字典

字典是Python中的组合数据类型之一,使用关键字dict表示。
字典中可以存储多个key:value(键值对)数据,key不能重复,value可以重复,字典中可以直接通过key获取到对应的value数据。

1.字典创建

#声明空字典
dct1=dict()
print(dct1,type(dct1))
#{} <class 'dict'>
dct2={
   }
print(dct2,type(dct2))
#{} <class 'dict'>
#申明非空字典
dct3={
   "xingming":"tianxiu","mima":"111"}
print(dct3,type(dct3))

2.字典操作

(1)增

dct1=dict()
#增加数据
dct1["password"]="mima"
print(dct1)
#{'password': 'mima'}

#增加一个键值对
dct1.setdefault("name","tianxiu")
print(dct1)
#{'password': 'mima', 'name': 'tianxiu'}

#增加多个键值对
dct1.update({
   "school":"lsh","like":"football"})
print(dct1)
#{'password': 'mima', 'name': 'tianxiu', 'school': 'lsh', 'like': 'football'}

(2)删

dct1=dict()
#增加数据
dct1["password"]="mima"
print(dct1)
#{'password': 'mima'}

#增加一个键值对
dct1.setdefault("name","tianxiu")
print(dct1)
#{'password': 'mima', 'name': 'tianxiu'}

#增加多个键值对
dct1.update({
   "school":"lsh","like":"football"})
print(dct1)
#{'password': 'mima', 'name': 'tianxiu', 'school': 'lsh', 'like': 'football'}

#修改
dct1["name"]="xilei"
print(dct1)
#{'password': 'mima', 'name': 'xilei', 'school': 'lsh', 'like': 'football'}

dct1.update({
   "password":"567"})
print(dct1)
#{'password': '567', 'name': 'xilei', 'school': 'lsh', 'like': 'football'}

#删除
dct1.pop("like")
print(dct1)
#{'password': '567', 'name': 'xilei', 'school': 'lsh'}

(3)改

dct1=dict()
#增加数据
dct1["password"]="mima"
print(dct1)
#{'password': 'mima'}

#增加一个键值对
dct1.setdefault("name","tianxiu")
print(dct1)
#{'password': 'mima', 'name': 'tianxiu'}

#增加多个键值对
dct1.update({
   "school":"lsh","like":"football"})
print(dct1)
#{'password': 'mima', 'name': 'tianxiu', 'school': 'lsh', 'like': 'football'}

#修改
dct1["name"]="xilei"
print(dct1)
#{'password': 'mima', 'name': 'xilei', 'school': 'lsh', 'like': 'football'}

dct1.update({
   "password":"567"})
print(dct1)
#{'password': '567', 'name': 'xilei', 'school': 'lsh', 'like': 'football'}

(4)查

#查询
#查询数据
print(dct1["school"])
#通过key查询value數据
print(dct1.get("name")) # 通过key查询value数据(只能用来查询)
print(dct1.keys()) # 获取所有的key数据
print(dct1.values()) # 获取所有的value数据
print(dct1.items()) # 获取所有的key:value数据
#lsh
#xilei
#dict_keys(['password', 'name', 'school'])
#dict_values(['567', 'xilei', 'lsh'])
#dict_items([('password', '567'), ('name', 'xilei'), ('school', 'lsh')])
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114462.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SQL Server 存储过程_mysql存储过程教程

    SQL Server 存储过程_mysql存储过程教程储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行。

    2022年10月5日
  • PHP条件语句if的使用

    PHP条件语句if的使用

    2021年10月9日
  • AdventureWorks2008R2安装过程可能会遇到的一些问题及解决方案

    AdventureWorks2008R2安装过程可能会遇到的一些问题及解决方案AdventureWorks2008R2范例数据库对于学习SQLServer2008R2是一个非常好的学习案例库,里面包含了一些详尽的数据库案例(官网下载)。但是如果直接安装的话,可能会遇到一些问题,下面介绍安装的一些必要前提:1.安装的数据库账户应具有系统权限。2.你所安装的数据库至少是”SQLServerExpresswithAdvancedServices“版本(我所安…

    2022年9月11日
  • ubuntu dock栏_ubuntu安装sudo命令

    ubuntu dock栏_ubuntu安装sudo命令点击打开链接苹果的MACOS里的dock任务栏让人印象深刻。Dock是苹果公司MacOSX操作系统,及其始祖NeXTSTEP和OPENSTEP操作系统中重要组成部分。在NewtonOS中也有dock概念的一些早期例子。现在在不同操作系统中有很多不同的dock程序。在ubuntu等linux系统中,现在已经可以非常方便的安装使用dock任务栏了,因为很多仿doc

    2022年9月11日
  • python 字符转义(url中文转义)

    URL特殊字符需转义1、空格换成加号(+)2、正斜杠(/)分隔目录和子目录3、问号(?)分隔URL和查询4、百分号(%)制定特殊字符5、#号指定书签6、&号分隔参数转义字符的原因:如果你的表单使用get方法提交,并且提交的参数中有“&”等特殊符的话,如果不做处理,在service端就会将&后面的作为另外一个参数…

    2022年4月14日
  • PyCharm的搜索/替换快捷键[通俗易懂]

    PyCharm的搜索/替换快捷键[通俗易懂]查找:Ctrl+F替换:Ctrl+R查找是Find,替换是Replace。

    2022年5月18日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号