Python基础之列表及元组的增删改查
定义一个列表
晚上的状态不太适合写博客,容易犯困~
列表的增加有三种方式
- 第一种主流的增加 append函数
list1 = ['noevil', 'fordearme', 'city', 'custom']
# 列表的增加 append
list1.append('你好')
print(list1) # ['noevil', 'fordearme', 'city', 'custom', '你好'] # 如果输入为q就退出,否则输入的员工名字将持续添加
person_list = []
while 1:
add_person = input('请输入要添加的员工名字: ')
# 不区分大小写
if add_person.strip().upper() == 'Q':
break
person_list.append(add_person)
print('公司现有人员名单%s' % person_list)
- 第二种 insert函数 L.insert(插入的索引位置, 插入的对象)
list1 = ['noevil', 'fordearme', 'city', 'custom']
list1.insert(0, 'no give')
['no give', 'noevil', 'fordearme', 'city', 'custom']
list1.insert(4, 'no give')
['noevil', 'fordearme', 'city', 'custom', 'no give']
- 第三种 列表的迭代添加
list1.extend('二哥')
print(list1)
['noevil', 'fordearme', 'city', 'custom', '二', '哥']
列表的迭代添加的对象必须是可迭代对象,int不是
list1.extend(123)
print(list1)
报错信息如下:
正确添加方式如下:
list1.extend([1, 2, 3])
print(list1)
['noevil', 'fordearme', 'city', 'custom', '二', '哥', 1, 2, 3]
列表的删除
按照索引删除 pop函数
li = ['youxiu', 'laogan', 'laosi', 'chenwei']
del_li2 = li.pop() # 如果不指定索引值,默认删除最后一个
print(li) # ['youxiu', 'laogan', 'laosi']
del_li = li.pop(1) # 指定了删除索引为1的
print(li) #['youxiu', 'laosi', 'chenwei']
print(del_li) # laogan 返回值为删除的对象
按元素删除 remove函数
li = ['男神', '女神', '丘比特']
li.remove('男神')
print(li) # ['女神', '丘比特']
一般不用的,全部删除,清空列表
li.clear()
print(li) # []
直接删除连列表
del li
切片删除
del li[2:4]
列表的修改
test1 = ['徐鹏SB', '孙悟空', '八戒', '猕猴']
print(test1[0])
# 徐鹏SB
# 原理是先把索引范围内的值给拿出来,之后循环的往里面添加你要修改的字符串或者列表等
test1[0:2] = '这个你会很吃惊'
print(test1)
# ['这', '个', '你', '会', '很', '吃', '惊', '八戒', '猕猴']
公共的方法
# 列表的统计指定字符出现次数
test2 = ['s', 's', 'c', 'dd', 'p']
total_count = test2.count('s')
print(total_count)
# 找指定字符第一次出现的索引,可以选择索引的 范围
index_str = test2.index('s', 1, 3)
print(index_str) # 1
# 列表的排序
# 正向排序
sort_list = [5, 4, 2, 6, 8, 3]
# sort_list.sort()
# print(sort_list)
# [2, 3, 4, 5, 6, 8]
# 反向排序
# sort_list.sort(reverse=True)
# print(sort_list)
# [8, 6, 5, 4, 3, 2]
# 反转排序
sort_list.reverse()
print(sort_list)
# [3, 8, 6, 2, 4, 5]
元组
- 只读文件,只能,不可修改,但是元组自身不可以修改,却可能可以修改自己的儿子
test_tuple = ('hello', 'world', [1, 2, 3, '就要改你'], 89)
# 可以查询
print(test_tuple[1])
# 但是我们修改他自己
test_tuple[1] = '我改'
- 结果会报错
# 元组里面的可变类型是可以修改的
test_tuple[2][3] = test_tuple[2][3] = '改了'
print(test_tuple)
- 可以看见元组里面的列表已经修改,所以元组的不可更改并不是真正意义上的不可修改
li = [1, 2, 3, 5, 'jls', [2, 3, 4, 5, 'youxiu'], 'sff']
for i in li:
if type(i) == list:
for j in i:
print(j)
else:
print(i)
- 结果如下:
有一个有意思的题目
for i in range(0, 10, -1):
print(i)
# 输出结果是什么,肯定不是你想的那样
结果即不报错,也不输出什么:
Python基础之列表及元组的增删改查的更多相关文章
- python学习之列表的定义以及增删改查
列表定义: >>> name['lily','lucy','tom'] >>> nums = [11,22,33,'100','lily'] #python中的列表 ...
- python基础4 列表和元组
一. 列表列表:python基础数据类型之一:其他语言中也有列表的概念,js 数组,可索引,可切片,可加步长li = ['hello', 100, True, [1, 2, 3], {'name':' ...
- python基础之列表list元组tuple
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7041763.html python基础之列表list元组tuple 列表li ...
- Python基础(列表、元组)
列表 在Python中列表用[]来表示,中间的元素可以是任何类型,用逗号分隔.列表是可变类型. 列表常用操作:增删改查. names = ["小明","小红", ...
- python链接oracle数据库以及数据库的增删改查实例
初次使用python链接oracle,所以想记录下我遇到的问题,便于向我这样初次尝试的朋友能够快速的配置好环境进入开发环节. 1.首先,python链接oracle数据库需要配置好环境. 我的相关环境 ...
- Python基础学习 -- 列表与元组
本节学习目的: 掌握数据结构中的列表和元组 应用场景: 编程 = 算法 + 数据结构 数据结构: 通过某种方式(例如对元素进行编号)组织在一起的数据元素的集合,这些元素可以是数字或者字符,或者其他数据 ...
- python的Web框架,Django的ORM,模型基础,MySQL连接配置及增删改查
Django中的ORM简介 ORM概念:对象关系映射(Object Relational Mapping,简称ORM): 用面向对象的方式描述数据库,去操作数据库,甚至可以达到不用编写SQL语句就能够 ...
- python 全栈开发,Day5(字典,增删改查,其他操作方法)
一.字典 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.存储大量的数据,是关系型数据,查询数据快. 列表是从头遍历到尾字典使用二分查找 二分查找也称折半查找(Bi ...
- python全栈开发day62-两表操作增删改查,外键,if else模板语法
一.今日内容总结: day62 内容回顾: 1. django有关所有命令: pip install django==1.11.14 django-admin startproject 项目名称 cd ...
随机推荐
- iPhone may be running a version of iOS that is not supported by this version of Xcode
Xcode6.0.1对ios8.1真机不识别,升级Xcode6.0.1为Xcode6.1,就行了.也可以,降低手机版本为以前的版本,想要降低手机版本请看我的另一片博客<iphone手机版本降级& ...
- 8.Appium的基本使用-1
1.Appium是什么?Appium是一个跨平台移动端自动化测试工具,可以便捷的为ios和Android平台创建自动化测试用例.模拟app内部各种操作,点击.滑动.文本输入等,手工操作的动作appiu ...
- 6.简单提取小红书app数据保存txt-2
对页面信息进行简单抓取: 需要注意的问题 : auth-sign 和 auth 都是有一定的时效性,还有url原url是https这里要改为http请求. 这参数的问题需要通过mitmdump去获取请 ...
- flex学习笔记-日历选择与显示
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...
- JEECG 新手常见问题大全,入门必读
大家还有什么问题,请跟帖,谢谢支持.. JEECG常见问题大全 原文地址:http://t.cn/RvYsEF61. jeecg数据库脚本问题 注意:jeecg3.5.2之前版本,不需要数据库脚 ...
- 修改页面中显示出需要修改的数据(包括select选择框复显示)
页面中需要用到某个对象时,在底层代码中赋值,然后页面用java代码进行获取调用 如下截图: select复显示:根据后台方法赋值选择框 ,并设置初始值 按钮及选择框的禁用(五种方法): 方法一: $( ...
- 函数参数,const 引用 和 非 const引用是不同的函数。
举个例子, void f(const int &x) 和 void f(int &x) 是不同的函数. 函数的返回值不能作为区分
- 尚硅谷springboot学习2-微服务
2014年,martin flowler发表关于微服务的博客 微服务是一种架构风格:一个应用应该是一组小型服务:可以通过HTTP的方式进行互通: 单体应用:ALL IN ONE 微服务:每一个功能元素 ...
- es查询时报 Data too large
报错如下: 原因: https://www.cnblogs.com/jiu0821/p/6526930.html 参数 indices.fielddata.cache.size 控制有多少堆内存是分配 ...
- Linux下查看与修改mtu值
MTU:通信术语 最大传输单元(Maximum Transmission Unit)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位). 我们在使用互联网时进行的各种网络操作,都是通 ...