Python第三天 序列 数据类型 数值 字符串 列表 元组 字典
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第三天 序列 数据类型 数值 字符串 列表 元组 字典的更多相关文章
- Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式
Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell ...
- python字符串/列表/元组/字典之间的相互转换(5)
一.字符串str与列表list 1.字符串转列表 字符串转为列表list,可以使用str.split()方法,split方法是在字符串中对指定字符进行切片,并返回一个列表,示例代码如下: # !usr ...
- python字符串 列表 元组 字典相关操作函数总结
1.字符串操作函数 find 在字符串中查找子串,找到首次出现的位置,返回下标,找不到返回-1 rfind 从右边查找 join 连接字符串数组 replace 用指定内容替换指定内容,可以指定次数 ...
- python 字符串,列表,元组,字典相互转换
1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} 字典转为字符串,返回:<type 'str'> {'age': 7, 'n ...
- Python数据类型-布尔/数字/字符串/列表/元组/字典/集合
代码 bol = True # 布尔 num = 100000000; # 数字 str = "fangbei"; # 字符串 str_cn = u"你好,方倍" ...
- Python自动化开发 - 字符串, 列表, 元组, 字典和和文件操作
一.字符串 特性:字符串本身不可修改,除非字符串变量重新赋值.Python3中所有字符串都是Unicode字符串,支持中文. >>> name = "Jonathan&q ...
- Python笔记【5】_字符串&列表&元组&字典之间转换学习
#!/usr/bin/env/python #-*-coding:utf-8-*- #Author:LingChongShi #查看源码Ctrl+左键 #数据类型之间的转换 Str='www.baid ...
- Python 整数 长整数 浮点数 字符串 列表 元组 字典的各种方法
对于Python, 一切事物都是对象,对象基于类创建!! 注:查看对象相关成员var,type, dir 一.整数 如: 18.73.84 每一个整数都具备如下需要知道的功能: def bit_len ...
- python_字符串&列表&元组&字典之间转换学习
#!/usr/bin/env/python #-*-coding:utf-8-*- #Author:LingChongShi #查看源码Ctrl+左键 #数据类型之间的转换 Str='www.baid ...
随机推荐
- OpenCart之联系我们contact us页面提交时邮件错误
许多OpenCart系统的用户都发现联系我们contact us页面提交时发生错误.本页发生错误是正常的,原因如下: 1. 你设定了SMTP,因此SMTP默认是从你设置的SMTP的email账户中发出 ...
- OpenCV ——遍历图像方法
转自http://blog.csdn.net/daoqinglin/article/details/23628125 ; y < testImage->height; y++) { uch ...
- JavaScript返回上一页并自动刷新
返回并刷新 <script>alert("恭喜您,操作成功!"); window.location.href=document.referrer; </scrip ...
- Win下安装Cygwin中的SSH服务
windows和linux各有其优越性,可以安装在同一台电脑上,但切换要重启.同时拥有两台电脑,一台装win,一台装linux,自然非常好,但具备此条件的不多.本文介绍cygwin,它可以让你在win ...
- MediaScanner与音乐信息扫描==
http://www.eoeandroid.com/forum.php?mod=viewthread&tid=98713 =================================== ...
- HTTPS与SSL
---------------------------------------------------------------------------------------------------- ...
- ibus用上搜狗拼音词库
1.下载搜狗拼音词库 wget http://hslinuxextra.googlecode.com/files/sougou-phrases-full.7z 2.用sougou-phrases-fu ...
- Android ART运行时无缝替换Dalvik虚拟机的过程分析
Android ART运行时无缝替换Dalvik虚拟机的过程分析 分类: Android2014-01-13 00:59 42722人阅读 评论(66) 收藏 举报 AndroidARTDalvikV ...
- sina微博上看到的关于android界面设计相关的规范
图片来自:http://photo.weibo.com/5174249907/wbphotos/large/mid/3777508610941685/pid/005EaCLFjw1emcpzdgrj9 ...
- 集合-字典(Lookup/SortedDictionary)
Lookup<TKey, TElement>非常类似于Dictionary<TKey, TValue>,但是把键映射在一个值集上. 必须调用ToLookup方法创建Lookup ...