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正则表达式操作指南(re使用)
Sep 06 Python
详解Python字符串对象的实现
Dec 24 Python
使用pyecharts无法import Bar的解决方案
Apr 23 Python
Python3利用SMTP协议发送E-mail电子邮件的方法
Sep 30 Python
解决Python的str强转int时遇到的问题
Apr 09 Python
python调用百度语音REST API
Aug 30 Python
Python中应该使用%还是format来格式化字符串
Sep 25 Python
Python实现计算字符串中出现次数最多的字符示例
Jan 21 Python
python3.4+pycharm 环境安装及使用方法
Jun 13 Python
Python中join()函数多种操作代码实例
Jan 13 Python
Python爬虫之Selenium多窗口切换的实现
Dec 04 Python
Opencv实现二维直方图的计算及绘制
Jul 21 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 cookie中点号(句号)自动转为下划线问题
2014/10/21 PHP
PHP中创建和验证哈希的简单方法实探
2015/07/06 PHP
Symfony2学习笔记之控制器用法详解
2016/03/17 PHP
JS 实现双色表格实现代码
2009/11/24 Javascript
基于jQuery的360图片展示实现代码
2012/06/14 Javascript
JS弹出层的显示与隐藏示例代码
2013/12/27 Javascript
ext前台接收action传过来的json数据示例
2014/06/17 Javascript
JavaScript中的闭包(Closure)详细介绍
2014/12/30 Javascript
解决URL地址中的中文乱码问题的办法
2017/02/10 Javascript
react-navigation 如何判断用户是否登录跳转到登录页的方法
2017/12/01 Javascript
Vue文件配置全局变量的实例
2018/09/06 Javascript
详解nodejs 开发企业微信第三方应用入门教程
2019/03/12 NodeJs
JS实现移动端在线签协议功能
2019/08/22 Javascript
layui+SSM的数据表的增删改实例(利用弹框添加、修改)
2019/09/27 Javascript
浅谈python字符串方法的简单使用
2016/07/18 Python
Python使用matplotlib绘制正弦和余弦曲线的方法示例
2018/01/06 Python
微信跳一跳python辅助脚本(总结)
2018/01/11 Python
python如何为创建大量实例节省内存
2018/03/20 Python
python调试神器PySnooper的使用
2019/07/03 Python
python读写csv文件并增加行列的实例代码
2019/08/01 Python
python实现遍历文件夹图片并重命名
2020/03/23 Python
python中使用.py配置文件的方法详解
2020/11/23 Python
python爬虫分布式获取数据的实例方法
2020/11/26 Python
整理HTML5中表单的常用属性及新属性
2016/02/19 HTML / CSS
详解HTML5 录音的踩坑之旅
2017/12/26 HTML / CSS
英国女士家居服网站:hush
2017/08/09 全球购物
澳大利亚最大的网上油画销售画廊:Direct Art Australia
2018/04/15 全球购物
成人大专生实习期的自我评价
2013/10/02 职场文书
捐助倡议书范文
2014/04/15 职场文书
大学生求职信
2014/06/17 职场文书
小学师德师风演讲稿
2014/09/02 职场文书
标准大学生职业生涯规划书写作指南
2014/09/18 职场文书
优秀共产党员事迹材料
2014/12/18 职场文书
2015年机关后勤工作总结
2015/05/26 职场文书
react antd实现动态增减表单
2021/06/03 Javascript
vue递归实现树形组件
2022/07/15 Vue.js