python基础复习-1-2 数据类型-str、list、tuple、dict
数据类型
数字
引号:
123 数值
'123' 字符串
整数:ini long 范围:(-2**31 - 2**31)
num = 123
长整型 long (L)
num = 123L
浮点型:float
复数型:
序列
字符串、列表、元组都属于序列
序列的两个主要特点是索引操作和切片操作
- 索引操作可以从序列中抓取一个特定的项目
- 切片操作可以从序列中获取一个切片,即序列的一部分
序列的基本操作
- len() : 求序列的长度
- : 连接两个序列
- : 重复序列元素
- in : 判断元素是否在序列中
- max() ; 返回最大值
- min() ; 返回最小值
- cmp(x,y): 比较两个序列是否相等
字符串 str
字符串:
str = 'this is a string' 单引号
str = "this is a strting" 双引号
str = '''this is a string''' 三引号
str = """ this is a strtng """
单双引号在python下没有区别
三重引号 除了能定义字符串(可包含换行符) 还可以用作注释
切片
适用于所有序列
In [9]: a = 'abcdef'
In [10]: a[0:2]
Out[10]: 'ab'
取下标0到2 下标为2的不显示
In [11]: a[:2]
Out[11]: 'ab'
取下标0到2 下标为2的不显示
In [12]: a[:-1]
Out[12]: 'abcde'
取下标0到倒数第1个 下标为倒数第1个的不显示
In [13]: a[::2]
Out[13]: 'ace'
步长为2,即取下标为0、2、4、6
In [14]: a[-3:-1]
Out[14]: 'de'
从倒数第3个取到倒数第1个,倒数第1个不显示
In [15]: a[-1:-4:-1]
Out[15]: 'fed'
反向切片,从倒数第一个取到倒数第4个,倒数第4个不显示
In [16]: a[-1:-4:-2]
Out[16]: 'fd'
反向切片,从倒数第一个取到倒数第4个,步长为2
总结:
a = "abcdef"
a[A:B:C]
A:切片开始的下标,包含
B:切片结束的下标,不包含
C:正数时表示步长
负数时表示进行反向切片及步长
元组 tuble
- 元组和字符串一样是不可变的
- 元组可以存储一系列的值
- 元组通常肜在用户定义的函数能够安全的采用一组值的时候,即被使用的元组的值不会改变
定义元组;
t = tuble() 定义一个元组 多个元素用 ,号分格,元素可以是数字、字符串、列表、元组
t = (1,) 当只有一个元素时,需要加一个 ,号,不加则赋值为数字
t = () 定义一个空的元组
元组的拆分:
t = (1, 2, 3)
a, b, c = t 将元组的值 1, 2, 3 依次赋值给 a, b, c
方法:
count() 统计元素在元组中的个数
index() 返回元素中元素第一个出现在下标
列表 list
列表是处理一组有序项目的数据结构,即可以在列表中存储一个序列的项目
列表是可变类型的数据
创建列表
list1 = [] 创建一个空列表
list2 = list() 使用list方法
list3 = ['a', 1, ['a', 1]]
方法:
append() 追加
L.append(object) -- append object to end
del list[n] 根据下标删除某个元素
remove() 删除列表里第一个出现在元素
L.remove(value) -- remove first occurrence of value.
insert() 在某个场索引前插入一个元素
L.insert(index, object) -- insert object before index
sort() 给列表陫序
L.sort(cmp=None, key=None, reverse=False) -- stable sort IN PLACE;
cmp(x, y) -> -1, 0, 1
reverse() 反转
L.reverse() -- reverse *IN PLACE*
pop() 删除并返回指定下标的元素值,不指定默认删除最后一个
L.pop([index]) -> item -- remove and return item at index (default last).
extend() 通过附加迭代元素来扩展列表
extend list by appending elements from the iterable
字典
字典是python中唯一映射的类型(哈希表)
字典对象是可变的,但字典的键必须是不可变的对象,一个字典中可以使用不同类型的键值
创建字典
dict1 = {} 使用 {} 创建一个空字典
dict2 = {'name':'li', 'age':10}
dict3 = dict([('name','li'),('age', 10)])
dict4 = dict('a'=10, 'n'=100)
字典的方法:
keys() 获取所有key
D.keys() -> list of D's keys
values() 获取所有 values
D.values() -> list of D's values
get() 获取key对应的值,不存在时可指定输出,默认为空
D.get(k[,d]) -> D[k] if k in D, else d. d defaults to None.
has_key() 查看key是否存在
D.has_key(k) -> True if D has a key k, else False
iitems() 转换为以(key, value)组成的列表
D.items() -> list of D's (key, value) pairs, as 2-tuples
copy() 拷备
D.copy() -> a shallow copy of D
clear() 清空字典
D.clear() -> None. Remove all items from D
pop() 删除指定KEY的value并返回value,如果KEY不存在可以返回一个给定value,否则抛出导常
D.pop(k[,d]) -> v, remove specified key and return the corresponding value.
If key is not found, d is returned if given, otherwise KeyError is raisedupdate() 从字典或两个迭代对象更新字典
D.update([E, ]**F) -> None. Update D from dict/iterable E and F.
If E present and has a .keys() method, does: for k in E: D[k] = E[k]
If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v
In either case, this is followed by: for k in F: D[k] = F[k]
fromkeys() 使用序列生成一个字典,值默认为空,可指定
dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.
v defaults to None.
python基础复习-1-2 数据类型-str、list、tuple、dict的更多相关文章
- day3------基本数据类型int, bool, str,list,tuple,dict
基本数据类型(int, bool, str,list,tuple,dict) 一.python基本数据类型 1. int 整数. 主要用来进行数学运算 2. str 字符串, 可以保存少量数据并进 ...
- python基础复习
复习-基础 一.review-base 其他语言吗和python的对比 c vs Python c语言是python的底层实现,解释器就是由python编写的. c语言开发的程序执行效率高,开发现率低 ...
- python基础之五大标准数据类型
学习一门语言,往往都是从Hello World开始. 但是笔者认为,在一个黑框框中输出一个"你好,世界"并没有什么了不起,要看透事物的本质,熟悉一门语言,就要了解其底层,就是我们常 ...
- Python基础复习面向对象篇
目录 类与对象的概念 实例方法 实例变量 初始化方法 析构方法 常用内置方法 继承 类方法与静态方法 动态扩展类与实例 @property装饰器 概述 面向对象是当前流行的程序设计方法,其以人类习惯的 ...
- Python的四个内置数据类型list, tuple, dict, set
Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个内置数据类型功不可没,他们即是list, tuple, dict, set.这里对他们进行一个简明的总结. List ...
- python基础-第二篇-基本数据类型
一.运算符 1.算数运算: 算数运算符相信大家都不陌生吧,尤其是加减乘除,好!那我就带着大家看看最后三个,这三个到底是干什么玩意的? %,取两数相除的余数,看图: **,x的多少次幂,看图: //,取 ...
- Python基础语法,基本数据类型及相关操作
---恢复内容开始--- python文件 文件开头要有 #!/usr/bin/ python --在linux中是告诉系统phthon的路径是在/usr/bin/ python目录下 ...
- Python基础之模块、数据类型及数据类型转换
一.模块 1.标准库 不需要安装,直接调入使用的模块. import sys模块: import sys print(sys.path) #打印环境变量绝对路径 print(sys.argv) #打印 ...
- python基础(二)-------数据类型
python开发基础篇(二)数据类型 python数据类型有: 1.数字 1.只能存放一个值 2.一经定义,不可更改 3.直接访问 主要的分类为:整型,长整型,(python2有长整型的概念Pytho ...
随机推荐
- # ML学习小笔记—Gradien Descent
关于本课程的相关资料http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML17.html 根据前面所为,当我们得到Loss方程的时候,我们希望求得最优的Loss方 ...
- asp.net中的cookie
一.cookie导读,理解什么是cookie 1.什么是cookie:cookie是一种能够让网站服务器把少量数据(4kb左右)存储到客户端的硬盘或内存.并且读可以取出来的一种技术. 2.当你浏览某网 ...
- 更换Sublime Text主题字体
Sublime Text作为脚本程序开发工具是一个不错的选择,支持多种语言,支持代码高亮显示,必要时还有代码提示功能.但是有的主题字体实在是难看,不过Sublime Text中也是可以更改的,只是更改 ...
- Java 如何正确停止一个线程
自己在做实验性小项目的时候,发现自己遇到一个问题:如何控制线程的"死亡"? 首先,如何开启一个线程呢? 最简单的代码: public class Main { public sta ...
- [洛谷P4208][JSOI2008]最小生成树计数
题目大意:有$n$个点和$m$条边(最多有$10$条边边权相同),求最小生成树个数 题解:对于所有最小生成树,每种边权的边数是一样的.于是就可以求出每种边权在最小生成树中的个数,枚举这种边的边集,求出 ...
- 某ISP的流氓行径 劫持用户HTTP请求插入js代码
最近公司搞的项目有用户反应点击任意链接后偶尔会跳到一个“莫名奇妙”的网站………… 喏,就是这个咯.
- 【BZOJ 3376】[Usaco2004 Open]Cube Stacking 方块游戏 带权并查集
这道题一开始以为是平衡树结果发现复杂度过不去,然后发现我们一直合并而且只是记录到最低的距离,那么就是带权并查集了,带权并查集的权一般是到根的距离,因为不算根要好打,不过还有一些其他的,具体的具体打. ...
- WCF分布式开发步步为赢(14):WCF安全编程--基本概念
WCF安全机制是个非常复杂的问题,因为涉及的知识点较多,所以今天这个文章,会分析进行WCF安全开发应该了解的哪些知识点.如何查看资料.为了更好地理解WCF安全相关知识,我把WCF安全机制主要知识点整理 ...
- gitlab7.2安装
系统:centos6.4 1.安装依赖包 导入epel: useradd git wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-rel ...
- SynchronizationContext.Post方法 代替
http://www.codeproject.com/KB/threads/SynchronizationContext.aspx看吧,不好,就将就的看下我的吧,呵呵!(没有直接翻译,不过大概的思路相 ...