Python常用的内置序列结构(列表、元组、字典)学习笔记


Posted in Python onJuly 08, 2016

列表与元组
列表用大括号[]表示,元组用圆括号()表示。
列表可以修改,字符串与元组不可修改。
元组的分片还是元组,列表的分片还是列表。

1.列表方法:

name=["zhang3","li4","wang5"]
name.append("gou6") #添加项
name.remove("gou6") #移除第一个匹配项,也可用del name[3]来移除
name.insert(3,"gou6") #插入项
name.index("gou6") #找出第一个匹配项的位置
name.extend(["gou6","xuan7"]) #扩展
name.pop(0) #返回列表的第一项值并从列表中删除之

2.列表函数:

>>> a=list("hi guys") #把字符串转换为列表
>>> print a
['h', 'i', ' ', 'g', 'u', 'y', 's']
>>> ''.join(a)  #把列表还原成字符串
'hi guys'
>>> max(a) #取得列表的最大元素
'y'
>>> len(a) #取得列表长度
7
>>> min(a) #取得最小元素
' '
>>> tuple(a) #将列表转换为元组
('h', 'i', ' ', 'g', 'u', 'y', 's')
>>> sorted(a) #将列表元素排序
[' ', 'g', 'h', 'i', 's', 'u', 'y']

3.列表遍历:

A,使用for语句遍历

for each_item in name:
   print(each_item)

B,使用while语句遍历

i=0
while i < len(name):
   print(name[i])
   i += 1

4.成员资格1:

>>> sub="hello, you are a bear"
>>> "bear" in sub
True
>>> "y" in sub
True
>>> raw_input("what's your name?") in sub
what's your name?bear
True

5.成员资格2:

database=[
["zhang3","0111"],
["li4","0112"],
["wang5","0113"]
]
username=raw_input("what's your user name?")
id=raw_input("what's your id?")
if [username,id] in database: print "access granted"

6.找出10以内的整数

s = [x for x in range(0, 10) if x % 2 == 0]

7.生成九九乘法表

s = [(x, y, x*y) for x in range(1, 10) for y in range(1,10) if x>=y]

字符串

1.获取字符串 

name=raw_input("what's your name?")
      print "Hello," + name + ".welcome to us"

注意:Pyhton3.x版本取消了raw_input,统一使用input
输出值:

print name + repr(x)
#str用于把值转换为合理的字符串,repr创建一个字符串,返回值的字符串形式
#str是一种类型(和int一样),repr是函数

2.换行符用\n表示
原始字符串,以字符串前加一个r即可,如

print r"c:\nowindows\no"
path="c:\nowindows\no"; print repr(path)

3.Unicode字符串

print u"redhat"

注意:Pyhton3.x版本所有字符串都是unicode字符串
定义字符串时,双引号和单引号都是可以用的,只不过用单引号的时候可以在字符串里面使用双引号
布尔值:

>>> bool('i love you')
True
>>> bool(42)
True
>>> bool(1)
True
>>> bool('0')
True
>>> bool(0)
False
>>> bool('')
False

4.字符串方法

>>> tag="<a href=http://www.baidu.com>baidu indexpage</a>"
>>> print tag[8:28] #字符串分片
http://www.baidu.com
>>> print tag[29:-4] #字符串分片
baidu indexpage
>>> tag.replace("www.baidu.com","home.sina.com") #字符串替换
'<a href=http://home.sina.com>baidu indexpage</a>'

>>> dirs=["","usr","bin","env"]
>>> "/".join(dirs)  #将列表拼接成字符串
'/usr/bin/env'
>>> print ("C:" + "\\".join(dirs))
C:\usr\bin\env

>>> path="/usr/bin/env"
>>> path.split("/") #将字符串分割成列表
['', 'usr', 'bin', 'env']

5.其它字符串方法

>>> s=' I Love you!  '
>>> s.lower() #转换字符串的小写
' i love you!  '
>>> s.upper() #转换字符串的大写
' I LOVE YOU!  '
>>> s.title() #换换字符串为标题(所有单词首字母大写)
' I Love You!  '
>>> s.islower() #判断字符串是否为小写(也可判断大写和标题)
False
>>> s.strip()  #去除首尾空格,lstrip去除左边空格,rstrip去除右边空格
'I Love you!'
>>> word=s.split() #分割
>>> word
['I', 'Love', 'you!']
>>> '::'.join(word) #合并
'I::Love::you!'
>>> s.count('o') #统计出现次数
2
>>> s.find('you') #查找位置,如果找不到,则返回-1
9
>>> s.startswith('python')
False
>>> s.replace('you','yours')
' I Love yours!  '
Python 相关文章推荐
python模拟登陆Tom邮箱示例分享
Jan 13 Python
Python with用法实例
Apr 14 Python
Python简单网络编程示例【客户端与服务端】
May 26 Python
Python 获取当前所在目录的方法详解
Aug 02 Python
书单|人生苦短,你还不用python!
Dec 29 Python
浅谈利用numpy对矩阵进行归一化处理的方法
Jul 11 Python
使用Python实现微信提醒备忘录功能
Dec 04 Python
pandas 把数据写入txt文件每行固定写入一定数量的值方法
Dec 28 Python
python对列进行平移变换的方法(shift)
Jan 10 Python
Python爬虫实现的根据分类爬取豆瓣电影信息功能示例
Sep 15 Python
python实现画出e指数函数的图像
Nov 21 Python
Python类中self参数用法详解
Feb 13 Python
使用Python读写及压缩和解压缩文件的示例
Jul 08 #Python
Python中的FTP通信模块ftplib的用法整理
Jul 08 #Python
Python中使用platform模块获取系统信息的用法教程
Jul 08 #Python
Python中的os.path路径模块中的操作方法总结
Jul 07 #Python
简介Python的collections模块中defaultdict类型的用法
Jul 07 #Python
Python的collections模块中的OrderedDict有序字典
Jul 07 #Python
Python的collections模块中namedtuple结构使用示例
Jul 07 #Python
You might like
在字符串指定位置插入一段字符串的php代码
2010/02/16 PHP
PHP将整个网站生成HTML纯静态网页的方法总结
2012/02/05 PHP
PHP生成Gif图片验证码
2013/10/27 PHP
PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
2014/07/28 PHP
PHP实践教程之过滤、验证、转义与密码详解
2017/07/24 PHP
jQuery的实现原理的模拟代码 -3 事件处理
2010/08/03 Javascript
js给onclick事件赋值,动态传参数实例解说
2013/03/28 Javascript
JS根据变量保存方法名并执行方法示例
2014/04/04 Javascript
JavaScript中的typeof操作符用法实例
2014/04/05 Javascript
用js闭包的方法实现多点标注冒泡示例
2014/05/29 Javascript
jquery的ajax异步请求接收返回json数据实例
2014/06/16 Javascript
node.js不得不说的12点内容
2014/07/14 Javascript
流量统计器如何鉴别C#:WebBrowser中伪造referer
2015/01/07 Javascript
分享JavaScript与Java中MD5使用两个例子
2015/12/23 Javascript
简单谈谈javascript中this的隐式绑定
2016/02/22 Javascript
轻松掌握jQuery中wrap()与unwrap()函数的用法
2016/05/24 Javascript
JavaScript实现经典排序算法之冒泡排序
2016/12/28 Javascript
Vuex和前端缓存的整合策略详解
2017/05/09 Javascript
详解vue-router和vue-cli以及组件之间的传值
2017/07/04 Javascript
Vue单文件组件基础模板小结
2017/08/10 Javascript
JS脚本加载后执行相应回调函数的操作方法
2018/02/28 Javascript
node中间层实现文件上传功能
2018/06/11 Javascript
vue tab滚动到一定高度,固定在顶部,点击tab切换不同的内容操作
2020/07/22 Javascript
[33:15]2018DOTA2亚洲邀请赛3月30日 小组赛B组 VP VS Mineski
2018/03/31 DOTA
python list使用示例 list中找连续的数字
2014/01/27 Python
Python文件操作,open读写文件,追加文本内容实例
2016/12/14 Python
Python如何优雅获取本机IP方法
2019/11/10 Python
Python中私有属性的定义方式
2020/03/05 Python
详解Django中views数据查询使用locals()函数进行优化
2020/08/24 Python
CSS3 中filter(滤镜)属性使用详解
2020/04/07 HTML / CSS
深入剖析webstorage[html5的本地数据处理]
2016/07/11 HTML / CSS
html5+css3气泡组件的实现
2014/11/21 HTML / CSS
行政部岗位职责范本
2014/03/13 职场文书
户外活动总结范文
2014/04/30 职场文书
Pytorch GPU内存占用很高,但是利用率很低如何解决
2021/06/01 Python
Redis如何实现验证码发送 以及限制每日发送次数
2022/04/18 Redis