Python第三天 序列  数据类型  数值  字符串  列表  元组  字典

数据类型
数值
字符串
列表
元组
字典

序列
序列:字符串、列表、元组
序列的两个主要特点是索引操作符切片操作符
- 索引操作符让我们可以从序列中抓取一个特定项目
- 切片操作符让我们能够获取序列的一个切片,即一部分序列

序列的基本操作
1. len(): 求序列的长度
2. +: 连接2个序列
3. *: 重复序列元素
4. in: 判断元素是否在序列中
5. max(): 返回最大值
6. min(): 返回最小值
7. cmp(x, y):比较两个序列是否相等 返回值大于0 ,等于0,小于0
cmp:按照字符串比较,字符串比较的原则就是一个字符一个字符的比较,字符按照ASCII码来比较,字符1比字符2小,所以gene1001小于gene2。

------------------------------------------------------------

数值类型
- 整型  2^32个数字,范围-2,147,483,648到2147483647
- 长整型  区分普通整型,需要在整数后加L或l。2345L,0x34al
- 浮点型  0.0,12.0,-18.8,3e+7
- 复数型  - 3.14j,8.32e-36j

-------------------------------------------------------------

字符串''类型

字符串是不可变数据类型
有三种方法定义字符串类型
str = 'this is a string'
str = "this is a string"
str = '''this is a string'''  或 """this is a string"""
三重引号(docstring)除了能定义字符串还可以用作注释
python里面单引号和双引号没有任何区别

\n:换行
str = "this is a \nstring"

字符串索引
字符串是序列,可以通过索引取每个字符
加号 :字符串连接符
- str = 'abcde'
- str[0] + str[1]
字符串切片
str[start:end:step]
step:为负数表示从右向左

>>> str[1:3]
'bc'
>>> str[:3]
'abc'
>>> str[3:]
'de'
>>> str[::1]
'abcde'
>>> str[::2]
'ace'
>>> str[-1]
'e'
>>> str[-4:-1]
'bcd'
>>> str[-2:-4:-1]
'dc'

---------------------------------------------------

元组()类型
元组和列表十分相似
元组和字符串一样是不可变的,不可变的意思是元组里面的元素不能修改,比如a[-1] = xx 会报错
- 元组可以存储一系列的值
- 元组通常用在用户定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改变。

创建元组
t= ()
t= (2,) 一定要加逗号才是元组,否则会当普通字符串对待
t = ('james', 'M')
t = ('james', 'M',(1,)) 元组里面包含元组
j = 'sd'
t = (j, 'M') 包含变量

print t
('sd', 'M')

print t[0] 返回第一个元素

元组操作
- 元组和字符串一样属于序列类型,可以通过索引和切片操作
- 元组值不可变
元组的拆分
t = (1,2,3)
a, b, c = t
a
1
b
2
c
3

---------------------------------------------------

列表[]类型

列表(list)是处理一组有序项目的数据结构,即可以在列表中存储一个序列的项目。
列表是可变类型的数据类型
创建列表
list1 = []
list2 = list()   list()函数
list3 = ['a',1,2]
list4 = ['a',1,(1,),['sdf','sww]]

对某项目赋值
list3[0] = 'b'

列表操作
- 取值
切片和索引
- 添加
list.append()
list1[2].append('abc')  如果列表里面又有列表使用下标来访问
- 删除
del list[x] 删除某个元素  del list 删除整个列表
list.remove(列表里面实际的值)
- 修改
list[] = x
- 查找
var in list
- 插入
list.insert(list[x],object)  在下标前插入一个对象
- 排序
list.sort()
- 反转
list.reverse()
- 弹出
list.pop([index])  返回一个元素并删除这个元素,参数是下标,没有参数会删除最后一个元素
- 扩展
list.extend()  可迭代的,相比append()方法可以追加多个值

---------------------------------------------------------

字典{}类型

字典是python中的唯一的映射类型(哈希表)
字典对象是可变的,但是字典的键必须使用不可变对象,一个字典中可以使用不同类型的键值。
跟redis的set类型一样,字典里的key不能重复,赋值的时候如果发现已有key则替换
字典的方法:
- keys() 返回所有key
- values() 返回所有value
- items() 返回一个列表,key和value在一个元组里

创建字典
dic = {}
dic = dict()

dict()函数
help(dict)
dict((['a',1],['b',2]))
dict(a=1, b=2)

fromkeys()函数
fromkeys(S[,v]) S指定数字或字符串,如果字符串,每个字符重复一次,v指定value的值,默认为None。
dic.fromkeys(range(3),100)
In [4]: dic.fromkeys(range(3),100)
Out[4]: {0: 100, 1: 100, 2: 100}
fromkeys函数创建的字段需要赋值到另一个字典才能保存
ddict = {}.fromkeys(('x','y'), 100)

访问字典
直接使用key访问:key不存在会报错,可以使用has_key()或者in和not in判断。
循环遍历:
例:
for k in dic.keys():
for k in dic:
print v 读取的是key
print dict1[v] 读取的是value

for k, v in dic.items():
print k, v

#!/usr/bin/python

info = {}  创建一个空字典
name = raw_input("Please input name: ")
age = raw_input("Please input age: ")
gender = raw_input('Please input (M/F): ')
info['name'] = name
info['age'] = age
info['gender'] = gender
for k, v in info.items():
print "%s: %s" % (k, v)
print 'main end'

Python第三天 序列 数据类型 数值 字符串 列表 元组 字典的更多相关文章

  1. Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式

    Python第三天 序列  5种数据类型  数值  字符串  列表  元组  字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell ...

  2. python字符串/列表/元组/字典之间的相互转换(5)

    一.字符串str与列表list 1.字符串转列表 字符串转为列表list,可以使用str.split()方法,split方法是在字符串中对指定字符进行切片,并返回一个列表,示例代码如下: # !usr ...

  3. python字符串 列表 元组 字典相关操作函数总结

    1.字符串操作函数 find 在字符串中查找子串,找到首次出现的位置,返回下标,找不到返回-1 rfind 从右边查找 join 连接字符串数组 replace 用指定内容替换指定内容,可以指定次数 ...

  4. python 字符串,列表,元组,字典相互转换

    1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} 字典转为字符串,返回:<type 'str'> {'age': 7, 'n ...

  5. Python数据类型-布尔/数字/字符串/列表/元组/字典/集合

    代码 bol = True # 布尔 num = 100000000; # 数字 str = "fangbei"; # 字符串 str_cn = u"你好,方倍" ...

  6. Python自动化开发 - 字符串, 列表, 元组, 字典和和文件操作

    一.字符串 特性:字符串本身不可修改,除非字符串变量重新赋值.Python3中所有字符串都是Unicode字符串,支持中文. >>> name  = "Jonathan&q ...

  7. Python笔记【5】_字符串&列表&元组&字典之间转换学习

    #!/usr/bin/env/python #-*-coding:utf-8-*- #Author:LingChongShi #查看源码Ctrl+左键 #数据类型之间的转换 Str='www.baid ...

  8. Python 整数 长整数 浮点数 字符串 列表 元组 字典的各种方法

    对于Python, 一切事物都是对象,对象基于类创建!! 注:查看对象相关成员var,type, dir 一.整数 如: 18.73.84 每一个整数都具备如下需要知道的功能: def bit_len ...

  9. python_字符串&列表&元组&字典之间转换学习

    #!/usr/bin/env/python #-*-coding:utf-8-*- #Author:LingChongShi #查看源码Ctrl+左键 #数据类型之间的转换 Str='www.baid ...

随机推荐

  1. 博弈论最简单例子TacTicToe

    博弈论是人工智能中的一个分支.顾名思义就是下棋的算法.当然引申出来的应用可能不止用来下棋,也可以用来做游戏或者模拟战争策略等. 博弈的基本算法也是模拟人的思维,比如当自己下子时遍历所有可能寻求最有利步 ...

  2. 【啊哈!算法】算法7:Dijkstra最短路算法

    上周我们介绍了神奇的只有五行的Floyd最短路算法,它可以方便的求得任意两点的最短路径,这称为“多源最短路”.本周来来介绍指定一个点(源点)到其余各个顶点的最短路径,也叫做“单源最短路径”.例如求下图 ...

  3. storm的并发

    1 storm并行的基本概念 storm集群中的一个机器可以运行一个或者多个worker,对应于一个或者多个topologies. 1个worker进程运行1个或多个excutor线程.每个worke ...

  4. 移动端touch点穿(穿透)解决办法

    回答一 穿透(点穿)是在mobile各种浏览器上发生的常见的bug.可能是由click事件的延迟或者事件冒泡导致. 移动web开发常用的Zepto库中的touch和tap事件就会有点穿的bug(Zep ...

  5. Attrib命令,可以让文件夹彻底的隐藏起来

    Attrib命令,可以让文件夹彻底的隐藏起来,就算是在文件夹选项中设置了显示隐藏文件夹,也无法显示出来的.只能通过路径访问的方式打开文件夹.如上图,就是attrib命令的隐藏文件夹和显示文件夹的两条命 ...

  6. XML字符串解析成对象的时候应注意空格

    BomList bomList=(BomList)unmarshaller_bom.unmarshal(new StringReader(xml));xml 不能以空格开头

  7. C#使用FFmpeg 将视频格式转换成Gif图片示例

    根据EFmpeg封装的视频转换gif工具:https://my.oschina.net/tianma3798/blog/825317 一.本次使用参数说明 /* * 参数说明: * -i 源文件位置 ...

  8. 第2课 Linux操作系统简介

    1. Linux操作系统的构成 (1)内核(kernel) ①操作系统的核心,负责管理系统的进程.内存.设备驱动程序.文件和网络系统. ②控制系统和硬件之间的相互通信. ③决定着系统的性能和稳定性. ...

  9. Chapter 1 First Sight——8

    It took only one trip to get all my stuff upstairs. 就一趟我就把所有的东西搬到楼上了. I got the west bedroom that fa ...

  10. html5语义化标签总结二

    HTML 5的革新之一:语义化标签二文本元素标签.分组元素标签. HTML 5的革新——语义化标签(一)中介绍了一些HTML5新加的一些节元素,一张页面中结构元素构成网页大体,但是也需要其他内容来填充 ...