2019-03-05-day004-列表操作
01 昨日内容回顾
bool int str 三者转换:pass
int
二进制与十进制之间的转换:
二进制 -------》 十进制
0000 0100 1*2**2
str:
msg = 'python20期'
msg[:3]
msg[:6]
msg[-1]
msg[:5:2]
msg[-1:-4:-1] # 反向取值一定要加反向步长-1
msg[:]
msg[::]
常用操作方法:
captilze(): 首字母大写
swapcase():大小写反转
upper() : 全部大写
lower(): 全部小写
find:通过元素找索引,找到第一个就返回,可以切片,找不到返回-1.
index:通过元素找索引,找到第一个就返回,可以切片,找不到报错.
replace(old,new,count): 替换。
center: 居中
count:计算某个元素出现的次数。
split:
str ---> list
分割,默认按照空格进行分割,可以指定字符。
可以设置分割次数。
rsplit。
strip:默认去除字符串两边的空格,制表符,换行符。
可以指定字符。
lstrip rstrip
format:格式化输出。
isdigit():判断字符串是否全部由数字组成。
isalpha():判断字符串是否全部由字母组成。
isalnum(): 判断字符串是否全部由字母或者数字组成。
startswith,endswith:
title:
join(): iterable
'*'.join(iterable)
len:获取字符串字符的数量,长度。
02 作业讲解
03 初识列表
why:
字符串的缺点:
1,只能存储少量的数据。
2,s = '1True[1,2,3]' 无论索引,切片 获取的都是字符串类型,单一,转化成它原来的类型还需要再一步转换。
int(s[0])
what:
python基础数据类型之一:list列表。
列表是以中括号组成,每个元素以逗号隔开的,容器型数据类型。
[1, '太白', [1,2,3],True, {'name': 'alex'}, (22,33)]
其它语言:js语言中叫数组。
列表是一个有序的可以存储大量的数据的数据类型。
how:
两个方面:
1 列表的切片
2 列表的常用操作
where:
程序中如果需要你构建一个容器型数据并且是按照顺序存储的大量的数据,你要用到列表。
04 列表的切片
列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,
比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,
而且他里面可以存放各种数据类型比如:
li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]
列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,
32位python的限制是 536870912 个元素,
64位python的限制是 1152921504606846975 个元素。
而且列表是有序的,有索引值,可切片,方便取值。
增
li = [1,'a','b',2,3,'a']
li.insert(0,55) #按照索引去增加
print(li)
li.append('aaa') #增加到最后
li.append([1,2,3]) #增加到最后
print(li)
li.extend(['q,a,w']) #迭代的去增
li.extend(['q,a,w','aaa'])
li.extend('a')
li.extend('abc')
li.extend('a,b,c')
print(li)
删
l1 = li.pop(1) #按照位置去删除,有返回值
print(l1)
del li[1:3] #按照位置去删除,也可切片删除没有返回值。
print(li)
li.remove('a') #按照元素去删除
print(li)
li.clear() #清空列表
改
li = [1,'a','b',2,3,'a']
li[1] = 'dfasdfas'
print(li)
li[1:3] = ['a','b']
print(li)
查
切片去查,或者循环去查。(index可以查元素)
05 列表的常用操作
count(数)(方法统计某个元素在列表中出现的次数)。
a = ["q","w","q","r","t","y"]
print(a.count("q"))
index(方法用于从列表中找出某个值第一个匹配项的索引位置)
a = ["q","w","r","t","y"]
print(a.index("r"))
sort (方法用于在原位置对列表进行排序)。
a = [2,1,3,4,5]
a.sort()# 他没有返回值,所以只能打印a
print(a)
reverse (方法将列表中的元素反向存放)。
a = [2,1,3,4,5]
a.reverse()#他也没有返回值,所以只能打印a
print(a)
06 列表的嵌套
列表的总结:
python常用的数据类型,工作中,都是涉及到嵌套的列表居多,今天必须要将增删改查其他操作全部记住。
下午作业一定要回嵌套的作业。
['a','b',['a','b']]
07 元祖
只读列表。
是python中基础数据类型之一,容器型数据类型,存储大量的数据。
(),里面的元素以,隔开的数据类型。
(1, '太白', [1,2,3],True, {'name': 'alex'}, (22,33))
其他语言中,没有元组的概念。
元组是不可以进行修改的,只能查询。
元组中存储的都是重要的数据,个人信息等等。
应用:
如果你想存储一些重要的数据,这些数据只读,不能修改,那么你就放到元组中。
08 range
内置函数,python给你提供的一个功能。
将range视为:可控制范围的数字列表。
下午安排:
做总结,将今天的代码敲3~5遍。
做作业(升级题可以放到最后做)。
$#@!~$作预习:
字典dict。
set(有时间就讲)了解。
补充知识点:
1.查看一个类中所有的可用方法:
[x for x in dir(str) if not x.startswith('_')]
sorted([x for x in dir(str) if not x.startswith('_')])
2.str类中find,index的区别
使用 find 如果找不到内容会返回 -1
使用 index如果找不到内容会报错
3.判断开始或者结束字符串的注意事项:
startswith:
endswith:
判断一个文件,是否是jpg格式的图片?
filename后缀有可能大写和小写混用,所以要先统一下。统一成大写或者小写都可以。
伪代码:
if filename.lower().endswith('.jpg'):
ok
4.切片操作总结:
格式:
[起始值:结束值:顺序和步长]
1.切片的顺序取决于最后一个参数,正数:正序;负数:倒序,默认是正序
2.正序时起始值在结束值右侧,或者倒序时起始值在结束值左侧,都会返回空字符串。
s = 'Hello'
s[3:2:2] -> ''
s[1:3:-2] -> ''
即:切片不会跨越字符串的首尾。
3.正数索引和负数索引可以混用。只要能指到正确的元素即可。
5.总结str类中涉及到从右侧开始的操作:
rfind 从右侧查找
rindex 从右侧查找
rjust 从右侧对齐
rstrip 从右侧删除空白字符
rsplit 从右侧切分
rpartition 从右侧分组
2019-03-05-day004-列表操作的更多相关文章
- [2019.03.16]使用DOM操作函数和CSS选择器来针对已有的HTML进行只凭JS的改动
刚入职的时候看到公司用的HTML日志生成工具附带的Panel,工具不够用,找个Fail还要找半天,于是自己琢磨着添砖加瓦.以前也是个半吊子前端工程师,现在可倒好,想要改页面却连页面生成的模板在哪里都不 ...
- 2019.06.05 ABAP EXCEL 操作类代码 OLE方式(模板下载,excel上传,内表下载)
一般使用标准的excel导入方法9999行,修改了标准的excel导入FM 整合出类:excel的 模板下载,excel上传,ALV内表下载功能. 在项目一开始可以SE24创建一个类来供整体开发使用, ...
- 03: Django Model数据库操作
目录:Django其他篇 01:Django基础篇 02:Django进阶篇 03:Django数据库操作--->Model 04: Form 验证用户数据 & 生成html 05:Mo ...
- [2019.03.25]Linux中的查找
TMUX天下第一 全世界所有用CLI Linux的人都应该用TMUX,我爱它! ======================== 以下是正文 ======================== Linu ...
- 2019.03.03 - Linux搭建go语言交叉环境
编译GO 1.6版本以上的需要依赖GO 1.4版本的二进制,并且需要把GOROOT_BOOTSTRAP的路径设置为1.4版本GO的根目录,这样它的bin目录就可以直接使用到1.4版本的GO 搭建go语 ...
- react实例之todo,做一个实时响应的列表操作
react实例之todo, 做一个实时响应的列表操作 在所有的mvc框架中,最常见的例子不是hello world,而是todo,由于reactjs的简单性,在不引用flux和redux的情况下,我们 ...
- TCL语言笔记:TCL中的列表操作
一.介绍 列表则是具有特殊解释的字符串.Tcl 中的列表操作和其它 Tcl 命令一样具有相同的结构.列表可应用在诸如 foreach 这样的以列表为变元的循环命令中,也应于构建 eval 命令的延迟命 ...
- Python 基础篇:字符串、列表操作
字符串操作 判断是否为数字 string = "200" string.isdigit() >>false 待完善.. 列表操作 列表是我们最以后最常用的数据类型之一, ...
- 征服 Redis + Jedis + Spring (三)—— 列表操作【转】
一开始以为Spring下操作哈希表,列表,真就是那么土.恍惚间发现“stringRedisTemplate.opsForList()”的强大,抓紧时间恶补下. 相关链接: 征服 Redis 征服 Re ...
- python学习笔记——列表操作
python列表操作——增 append:追加一条数据到列表的最后 name = ["Zhangsan","XiongDa","Lisi"] ...
随机推荐
- New Year and Old Subsequence CodeForces - 750E (dp矩阵优化)
大意: 给定字符串, 每次询问区间[l,r]有子序列2017, 无子序列2016所需要删除的最小字符数 转移用矩阵优化一下, 要注意$(\mathbb{Z},min,+)$的幺元主对角线全0, 其余全 ...
- PTA L2-002 链表去重
题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805072641245184 第一次做链表题,有时间多看看 解释 ...
- js对象合并
实现js对象大合并,ES6之前就只有循环遍历咯.可以用ES6的话可以用Object.assign(). 以下是Object.assign()示例: var o1 = { a: 1 }; var o2 ...
- DBWritable的使用
首先导入mysql连接驱动jar包 或者maven模式下在pom.xml文件中追加: <dependency> <groupId>mysql</groupId> & ...
- GSON使用之对特殊字符的转换的处理
很多人是在转换时特殊字符被替换成了unicode编程格式,而我碰到的类似,只不过是后台转换成json字符串到前端,前端解析时 '' 双引号和 / 斜杠被原样转换,冲突了json的关键字符,导致解析时提 ...
- ORA-12537:TNS:connectionclosed错误处理过程
1.ORA-12537:TNS:connectionclosed错误处理过程 检查监听正常,oracle服务也是正常启动的,但是登录不进去. 2.解决方案 1. cd $ORACLE_HOME/bin ...
- weblogic控制台用户名密码修改
1.记得用户名密码但想修改密码修改方法 保存后立即生效,即你退出后即能以新密码登录:但由于启动的用户名密码和登录的用户名密码是同一个,所以我们需要去修改DOMAIN_HOME/servers/serv ...
- nginx补丁格式说明(CVE-2016-4450为例)
nginx安全公告地址:http://nginx.org/en/security_advisories.html CVE-2016-4450:一个特定构造的数据包,可引发nginx引用空指针,导致ng ...
- 文件操作_26th,Nov 2018
文件:操作系统问应用程序或用户提供一种操作硬盘的虚拟单位 --文件时操作系统提供的虚拟单位 --应用程序或用户对文件的读写操作都是向操作系统发送指令 --文件包括文本文件和二进制文件 为何要用文件:文 ...
- js 数组api
Javascript Array API JS数组对象提供了很多API方法,要用到的朋友可以查阅哈,如有错误欢迎指正. /** * Created by Administrator on 2017 ...