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 相关文章推荐
go和python调用其它程序并得到程序输出
Feb 10 Python
Python实现partial改变方法默认参数
Aug 18 Python
在Python中使用CasperJS获取JS渲染生成的HTML内容的教程
Apr 09 Python
在Python中操作时间之strptime()方法的使用
Dec 30 Python
教你使用python画一朵花送女朋友
Mar 29 Python
解决Python requests库编码 socks5代理的问题
May 07 Python
Python实现字典排序、按照list中字典的某个key排序的方法示例
Dec 18 Python
Apache部署Django项目图文详解
Jul 30 Python
使用Python第三方库pygame写个贪吃蛇小游戏
Mar 06 Python
Python RabbitMQ实现简单的进程间通信示例
Jul 02 Python
深入分析python 排序
Aug 24 Python
Python开发工具Pycharm的安装以及使用步骤总结
Jun 24 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代码(抓取网页中的邮箱地址)
2012/07/17 PHP
php遍历所有文件及文件夹的方法深入解析
2013/06/08 PHP
php使用$_POST或$_SESSION[]向js函数传参
2014/09/16 PHP
php抽象类使用要点与注意事项分析
2015/02/09 PHP
php 变量引用与变量销毁机制详细介绍
2016/12/05 PHP
YII2框架中actions的作用与使用方法示例
2020/03/13 PHP
JavaScript 参考教程
2006/12/29 Javascript
javascript 计算两个整数的百分比值
2009/12/26 Javascript
Javascript图像处理—虚拟边缘介绍及使用方法
2012/12/27 Javascript
javascript 禁用IE工具栏,导航栏等等实现代码
2013/04/01 Javascript
B/S模式项目中常用的javascript汇总
2013/12/17 Javascript
第十章之巨幕页头缩略图与警告框组件
2016/04/25 Javascript
详解jQuery事件
2017/01/13 Javascript
angularJS+requireJS实现controller及directive的按需加载示例
2017/02/20 Javascript
AngularJS动态菜单操作指令
2017/04/25 Javascript
信息滚动效果的实例讲解
2017/09/18 Javascript
浅谈Vue2.0父子组件间事件派发机制
2018/01/08 Javascript
vue.js通过路由实现经典的三栏布局实例代码
2018/07/08 Javascript
微信小程序实现红包雨功能
2018/07/11 Javascript
JS中的两种数据类型及实现引用类型的深拷贝的方法
2018/08/12 Javascript
vue-router 实现导航守卫(路由卫士)的实例代码
2018/09/02 Javascript
vue 中滚动条始终定位在底部的方法
2018/09/03 Javascript
React传值 组件传值 之间的关系详解
2019/08/26 Javascript
使用Easyui实现查询条件的后端传递并自动刷新表格的两种方法
2019/09/09 Javascript
Python基于回溯法解决01背包问题实例
2017/12/06 Python
在Python中获取两数相除的商和余数方法
2018/11/10 Python
python实现文本界面网络聊天室
2018/12/12 Python
Python使用while循环花式打印乘法表
2019/01/28 Python
Django model select的多种用法详解
2019/07/16 Python
对python中的os.getpid()和os.fork()函数详解
2019/08/08 Python
PyTorch实现AlexNet示例
2020/01/14 Python
英国家喻户晓的折扣商场:TK Maxx
2017/05/26 全球购物
群众路线剖析材料怎么写
2014/10/09 职场文书
精神病医院见习报告
2014/11/03 职场文书
语文教师个人工作总结
2015/02/06 职场文书
Python道路车道线检测的实现
2021/06/27 Python