Python 列表,元组,字典
0)字符串切片
py_str = 'python'
>>>py_str[0] #取第一个字符串,返回值为"p",超出范围会报错
>>>py_str[-2] #取倒数第二个字符串,返回值为"o",-1则为倒数第一
>>>py_str[2:4] #取第二和第三个字符串,返回值为"th"
>>>py_str[2:] #取第二个和后面全部的字符串,返回值为"thon"
>>>py_str[:4] #取前四个字符串,返回值为"pyth"
>>>py_str[::2] #取(步长值)0,2,4,6,8...相当于[0::2],返回值"pto"
>>>py_str[1::2] #返回值"yhn"1,3,5,7...
>>>py_Str[::-1] #反着取,返回值"nohtyp"
>>>t in py_str #返回true
>>>t not in py_str #返回false
>>>py_str.lower() #大写转换成小写
>>>py_str.upper() #小写转换成大写
>>>py_str.capitalize() #首字母大写
>>>py_str.strip() #去除字符串两边的空白(包含空格,tab键,回车等)
>>>py_str.lstrip() #去除字符串左边的空白
>>>py_str.rstrip() #去除字符串右边的空白
>>>py_str.center(3,'#') #用三个"#"填充两边,让字符串占中间(居中),输出结果为###python###
>>>'abc' + 'xyz' #合并操作,返回'abcxyz'
>>>'*' * 5 #重复操作,返回'*****'
1)列表的操作
>>>alist = [1,2,'bob','alice',[10,20]]
>>>len[alist] #输出列表长度,返回5
>>>alist[0] #查看列表第一个值,像字符串一样支持下标和切片操作
>>>alist #查看列表全部值或者alis[0:5]
>>>2 in alist #返回true
>>>'bob' in alist #返回true,字符要带引号(单引号和双引号无区别)
>>>alist.append(4) #在列表的尾处追价一个4
>>>alist.insert(3,5) #在下标为3的位置加一个5
>>>alist.sort() #按升序排列,从小到大
>>>alist.reverse #翻转,倒序
>>>alist.pop() #删除元素,默认删除最后一个
>>>alist.pop(2) #根据下标弹出元素
python 创建二维列表,将需要的参数写入 cols 和 rows 即可
>>> list_2d = [[0 for col in range(cols)] for row in range(rows)]
>>> list_2d = [ [0 for i in range(5)] for i in range(5)] #第一个for把0循环五次,第二个for把第一个for循环五次
>>> [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
>>> list_2d[0].append(3)
>>> list_2d[0].append(5)
>>> list_2d[2].append(7)
>>> list_2d
[[0, 0, 0, 0, 0, 3, 5], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 7], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
2)元组的操作 #相当于静态的列表,一旦定义不可更改,用得比较少,一般用列表比较多
>>>atuple = (1,"tom",2,"alice") #注意此处用的是小括号(),列表用的是方括号[]
3)字典 #用大括号{}定义的键值对(key-value)映射关系,无序类型
>>>adict = {'name':'bob','age':23} #不能像列表那样通过下标获取值
>>>len(adict) #输出字典长度为2
>>>name in adict #返回true
>>>bob in adict #返回false
>>>adict['name'] #取某个键的值,注意带引号
>>>adict['age'] = 25 #修改或删除已有键/值对
>>>del adict['name'] #删除键是'name'的条目
>>>dict.clear() #清空词典所有条目
>>>del adict #删除词典
>>>print adict.get('age') #打印age这个key所对应的value值,若没有则返回none
>>>adict.values() #以列表返回字典中的所有值
>>>adict.items() #数以列表返回可遍历的(键, 值) 元组数组。
4)数字类型比较
=按存储模型分类
-标量类型:数值、字符串
-容器类型:列表、元组、字典
=按更新模型分类
-可变类型:列表、字典
-不可变类型:数字、字符串、元组
=按访问模型分类
-直接访问:数字
-顺序访问:字符串、列表、元组
-映射访问:字典
blist = alist #则blist改变alist也改变,因为两个列表指向同一个内存空间
clist = alist[:] #alist的数据重头到尾出赋值給clist,clist改变不影响alist,因为clist拿到alist的值去创建了新的内存空间
5)以上的类型都是可迭代得对象,一般用for循环迭代
-判断对象是否可迭代:通过collections模块的Iterable类型判断
>>>from collections import Iterable #倒入模块
>>>isinstance('a','bb') #返回true表示可迭代,false表示不可迭代
-如何对list实现类似java那样的下标循环?
python内置的enumerate函数可以把一个list变成(索引-元素)对,这样就可以在for循环中同时迭代索引和元素
>>>for i,value in enumerate(['a','b','c'])
>>> print i,value
0 a
1 b
2 c
Python 列表,元组,字典的更多相关文章
- python3笔记十八:python列表元组字典集合文件操作
一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle #数据持久性模块 #封装的方法def OptionData(data,path): # ...
- Python列表,元组,字典,序列,引用
1.列表 # Filename: using_list.py # This is my shopping list shoplist=["apple", "mango&q ...
- 【277】◀▶ Python 列表/元组/字典说明
目录: 前言 一.访问列表中的值 二.更新列表 三.删除列表元素 四.Python 列表脚本操作符 五.Python 列表函数 & 方法 参考:Python 列表(List)使用说明 列表截取 ...
- Python 列表/元组/字典总结
序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内置类型,但最常见的是列表和元组. 序列 ...
- Python列表,元组,字典,字符串方法笔记
01. 列表 1.1 列表的定义 List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组 专门用于存储 一串 信息 列表用 [] 定义,数据 之间使用 , 分隔 列 ...
- python 列表 元组 字典 集合
列表 lst = [i for i in range(10)] 切片 # 把下标小于2的显示出来 print(lst[:2]) # 把10个数有大到小输出 print(lst[::-1]) # 把下标 ...
- Python 列表&元组&字典&集合
列表(list) 有序性,可存储任意类型的值 通过偏移存取,支持索引来读取元素,第一个索引为0 ,倒数第一个索引为-1 可变性 ,支持切片.合并.删除等操作 可通过索引来向指定位置插入元素 可通过po ...
- Python列表,元组,字典,集合详细操作
菜鸟学Python第五天 数据类型常用操作及内置方法 列表(list) ======================================基本使用====================== ...
- Python第三天 序列 数据类型 数值 字符串 列表 元组 字典
Python第三天 序列 数据类型 数值 字符串 列表 元组 字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...
随机推荐
- java中this和super关键字的作用
this是对象内部指代自身的引用,同时也是解决成员变量和局部变量同名问题:this可以调用成员变量,不能调用局部变量:this也可以调用成员方法,但是在普通方法中可以省略this,在构造方法中不允许省 ...
- #define和const的区别(转)
这个区别用从几个角度来说: 角度1:就定义常量说的话:const 定义的常数是变量 也带类型, #define 定义的只是个常数 不带类型. 角度2:就起作用的阶段而言:define是在编译的预处理阶 ...
- jsp service bean
//在jsp中使用后台service中方法需要在jsp页面引入service bean 1 <%@page import="com..entity.Users"%> & ...
- 莫队算法 sqrt(n)分块思想
在此说一下本渣对莫队算法思想的一些浅薄理解 莫队算法的思想就是对真个区间的分块,然后按照每块来分别进行计算,这样最终的复杂度可以达到n*sqrt(n) 小Z的袜子是一道非常经典的题目.:题目链接htt ...
- action通信机制
当service通信不能很好的完成任务时候, actionlib则可以比较适合实现长时间的通信过程, actionlib通信过程可以随时被查看过程进度, 也可以终止请求, 这样的一个特性, 使得它在一 ...
- 解决(Missing artifact com.oracle:ojdbc14:jar:11.2.0.4.0)
maven项目检索时报Missing artifact com.oracle:ojdbc14:jar:11.2.0.4.0 经过查阅资料知道原因为: Oracle 的 ojdbc.jar 是收费的,M ...
- [Luogu P4178]Tree 题解(点分治+平衡树)
题目大意 给定一棵树,边带权,问有多少点对满足二者间距离$\leq K$,$n \leq 40000$. 题解 点分治专题首杀!$Jackpot!$ (本来看着题意比较简单想捡个软柿子捏,结果手断了… ...
- yield和生成器, 通过斐波那契数列学习(2.5)
实现斐波那契数列的集中方法 返回一个数 def fib(max): n, a, b = 0, 0, 1 while n < max: print(b) a, b = b, a+b n += 1 ...
- selenium工作的大概原理
selenium的原理是什么? selenium的原理涉及到3个部分,分别是 浏览器 driver: 一般我们都会下载driver client: 也就是我们写的代码 client其实并不知道浏览器是 ...
- webogic基本使用
文章目录 启动 注入 部署应用: 访问 启动 /root/Oracle/Middleware/user_projects/domains/weblogic/bin/startWebLogic.sh 上 ...