Python基础学习三 list-增删改查、切片、循环、排序
一、list 增删改查
1、增加
方式一:
stus = ['xiaohei','xiaobai','xiaohuang','cxdser']
stus.append('test001')#从最后面开始插入
print(stus)
输出:['xiaohei', 'xiaobai', 'xiaohuang', 'cxdser', 'test001']
方式二:
stus = ['xiaohei','xiaobai','xiaohuang','cxdser']
stus.insert(1,'test002') #从指定位置插入,这个1代表下标
print(stus)
输出:['xiaohei', 'test002', 'xiaobai', 'xiaohuang', 'cxdser']
注意:
stus = ['xiaohei','xiaobai','xiaohuang','cxdser']
stus.insert(1000,'test003') #如果你指定的下标不存在,那么就是在末尾添加
print(stus)
输出:['xiaohei', 'xiaobai', 'xiaohuang', 'cxdser', 'test003']
2、修改
stus = ['xiaohei','xiaobai','xiaohuang','cxdser']
stus[2]='louis'
print(stus)
输出:['xiaohei', 'xiaobai', 'louis', 'cxdser']
3、查看
stus = ['xiaohei','xiaobai','xiaohuang','cxdser']
stus[2]='louis'
print(stus)
print(stus[-1]) #负数表示倒数
print(stus.count('louis'))#查看某个元素在这个里面的个数,如果该元素不存在,那么返回0
输出:
['xiaohei', 'xiaobai', 'louis', 'cxdser']
cxdser
1
4、删除
stus = ['test000','test001','test002','test003','test004']
stus.pop(0)#默认删除最后一个元素,如果指定下标,那么删除指定的元素
print(stus)
输出:['test001', 'test002', 'test003', 'test004']
stus.remove('test002')#删除list里面的一个元素
print(stus)
输出:['test001', 'test003', 'test004']
del stus[1]
print(stus)
输出:['test001', 'test004']
stus.clear()#清空整个list
print(stus)
输出:[]
5、排序
reverse()方法
stus = ['test000','test001','test002','test003','test004']
stus.reverse()#反转list
print(stus)
输出:['test004', 'test003', 'test002', 'test001', 'test000']
sort()排序方法
nums = [9,31,345,12,457,2352,12143,2321]
nums.sort()
print(nums)
输出:[9, 12, 31, 345, 457, 2321, 2352, 12143]
nums.sort(reverse=True) #排序,默认排序是升序,如果指定了reverse=True就是按照降序拍
print(nums)
输出:[12143, 2352, 2321, 457, 345, 31, 12, 9]
sorted()方法
a = [5, 7, 6, 3, 4, 1, 2]
b = sorted(a) #即可以保留原列表,又能得到已经排序好的列表
print(a)
print(b)
输出:[5, 7, 6, 3, 4, 1, 2]
[1, 2, 3, 4, 5, 6, 7]
c=sorted('www.cnblogs.com')
print(c)
输出:['.', '.', 'b', 'c', 'c', 'g', 'l', 'm', 'n', 'o', 'o', 's', 'w', 'w', 'w']
二、多维数组
1、二维数组 三维数组
two_list = [123,456,[789,10,11]]
three_list = [ 123, 456, [789,10,11, ['hahaha','1234'] ]]
print(two_list[2][1])
输出:10
a = [1,2,3]
b = [4,5,6]
a.extend(b)#合并两个list
print(a)
print(b)
输出:[1, 2, 3, 4, 5, 6]
[4, 5, 6]
三、list切片、循环
stus = ['test000','test001','test002','test003','test004']
stus1=stus[1:4] # 取下标1至下标4之间值,包括1,不包括4
print(stus1)
输出:['test001', 'test002', 'test003']
stus2=stus[1:-1] # 取下标1至-1的值,不包括-1
print(stus2)
输出:['test001', 'test002', 'test003']
stus3=stus[0:3] # 取下标0至3的值,不包括3
print(stus3)
输出:['test000', 'test001', 'test002']
stus4=stus[:3] # 取下标0至3的值,不包括3,和上面的效果一样,0可以省略不写
print(stus4)
输出:['test000', 'test001', 'test002']
stus5=stus[2:] # 取从第二个下标开始的后面所有元素
print(stus5)
输出:['test002', 'test003', 'test004']
总结:切片是不包含后面那个元素的值的,记住顾头不顾尾;
#切片同样适用于字符串,字符串也有下标
title='今1天234发5苹67果890'
print(title[:6])
输出:今1天234
查询遍历:
list1 = ["这", "是", "一个", "测试?"]
for a in range (len(list1)):
print(a ,list1[a])#注意缩进
list1 = ["测试", "一个", "是", "这"]
for index, item in enumerate(list1):
print(index, item)#注意缩进
输出: 0 测试
1 一个
2 是
3 这
例子:非空即真、非0即真;strip()验证是否为空
for i in range(3):
username = input('username:').strip()
passwd = input('passwd:').strip()
if username and passwd:
if username=='louis' and passwd=='123':
print('%s欢迎登录'%username)
break
else:
print('账号/密码错误!')
else:
print('账号/密码不能为空')
else:
print('错误失败次数太多!')
Python基础学习三 list-增删改查、切片、循环、排序的更多相关文章
- python基础之字典以及增删改查
字典:字典是python中唯一的一个映射类型,主要形式为 dic = {key1:value,key2:value2,....} 字典中key的值是唯一的,主要关系到HASH算法,并且key的值必须是 ...
- python 基础_ 数组的 增删改查3
数组是运用在多个数据存在一个变量中的,而在调用的时候可以调用所需要的数组. 创建数组 a = ['a','b','c','d','f'] #创建一个数组a其中有5个元素分别是abcdf 1.查询.所谓 ...
- python 基础知识 列表的 增删改查 以及迭代取值
""" python 列表 通用方法 元组.数组.字典 取值方法 [] 列表中可以存储不同类型的数据 函数 封装了独立的功能可以直接调用 函数名(参数) 方法 和函数类似 ...
- python基础之实现sql增删改查
# encoding:utf-8 # Author:"richie" # Date:2017/8/2 import re key_l = ['id', 'name', 'age', ...
- ASP.NET从零开始学习EF的增删改查
ASP.NET从零开始学习EF的增删改查 最近辞职了,但是离真正的离职还有一段时间,趁着这段空档期,总想着写些东西,想来想去,也不是很明确到底想写个啥,但是闲着也是够 ...
- MyBatis学习系列二——增删改查
目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring 数据库的经典操作:增删改查. 在这一章我们主要说明一下简单的查询和增删改, ...
- http://www.cnblogs.com/nangong/p/db29669e2c6d72fb3d0da947280aa1ce.htm ASP.NET从零开始学习EF的增删改查
http://www.cnblogs.com/nangong/p/db29669e2c6d72fb3d0da947280aa1ce.htmlASP.NET从零开始学习EF的增删改查
- python manage.py shell 的增删改查
python manage.py shell 的增删改查 guoguo-MacBook-Pro:myblog guoguo$ python manage.py shell Python 3.5.1 ( ...
- Python基础学习三
Python基础学习三 1.列表与元组 len()函数:可以获取列表的元素个数. append()函数:用于在列表的最后添加元素. sort()函数:用于排序元素 insert()函数:用于在指定位置 ...
随机推荐
- css3 hover 效果
链接 链接 链接 链接 大量级 11 22 类似拉勾 33 包括各种流行的hover 小众 极光
- C#调用EasyPusher推送到EasyDarwin实现视频流中转
本文转自:http://www.cnblogs.com/kangkey/p/6772863.html 最近在公司项目中,遇到需要将内网的监控视频信息,在外网进行查看,最终通过查阅资料,发现EasyDa ...
- 在Linux上部署DotNet Core项目的时候发现Apache无法转发Kestrel的5000端口的问题
CentOS服务器上使用Apache托管Dotnet Core2,服务启动了,端口也打开了.在本地使用curl命令可以访问5000端口的网页内容,但是访问Apache的端口却无法获取到网页的内容.想起 ...
- Zookeeper在Dubbo中的作用及Zk集群的选举原理
转自 : https://blog.csdn.net/zh15732621679/article/details/80723358
- 21天学通C++_Day2
继续学习,今天满课,相对学习内容较少,下面罗列内容: 0.常量 ▪字面常量: ▪使用关键字const声明的常量,const double Pi = 22.0/7; //后面有分号,跟定义变量一样 ▪使 ...
- ACM ICPC 2018 青岛赛区 部分金牌题题解(K,L,I,G)
目录: K Airdrop I Soldier Game L Sub-cycle Graph G Repair the Artwork ———————————————————— ps:楼主脑残有点严 ...
- LeetCode Partition to K Equal Sum Subsets
原题链接在这里:https://leetcode.com/problems/partition-to-k-equal-sum-subsets/description/ 题目: Given an arr ...
- LibreOJ β Round #2 题解
LibreOJ β Round #2 题解 模拟只会猜题意 题目: 给定一个长为 \(n\) 的序列,有 \(m\) 次询问,每次问所有长度大于 \(x\) 的区间的元素和的最大值. \(1 \leq ...
- django配置静态文件
django配置静态文件 参考文章链接:http://blog.csdn.net/hireboy/article/details/8806098
- linux之 crontab 定时任务
crontab命令被用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查 ...