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学习笔记 下载
Feb 10 Python
对numpy和pandas中数组的合并和拆分详解
Apr 11 Python
Python爬虫PyQuery库基本用法入门教程
Aug 04 Python
python3转换code128条形码的方法
Apr 17 Python
Python Django框架实现应用添加logging日志操作示例
May 17 Python
Python 实现日志同时输出到屏幕和文件
Feb 19 Python
Python找出列表中出现次数最多的元素三种方式
Feb 24 Python
Python OpenCV读取中文路径图像的方法
Jul 02 Python
mac安装python3后使用pip和pip3的区别说明
Sep 01 Python
calendar在python3时间中常用函数举例详解
Nov 18 Python
教你怎么用PyCharm为同一服务器配置多个python解释器
May 31 Python
Python利用FlashText算法实现替换字符串
Mar 31 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
漫威DC御用漫画家去世 他的表情包曾走红网络
2020/04/09 欧美动漫
php 动态添加记录
2009/03/10 PHP
PHPMailer 中文使用说明小结
2010/01/22 PHP
关于php正则匹配汉字的方法介绍
2013/04/25 PHP
浅析PHP关键词替换的类(避免重复替换,保留与还原原始链接)
2015/09/22 PHP
javascript Split方法,indexOf方法、lastIndexOf 方法和substring 方法
2009/03/21 Javascript
jQuery代码优化 遍历篇
2011/11/01 Javascript
jQuery实现类似淘宝购物车全选状态示例
2013/06/26 Javascript
如何动态的导入js文件具体该怎么实现
2014/01/14 Javascript
在百度知道团队中快速审批新成员的js脚本
2014/02/02 Javascript
jquery实现表单验证简单实例演示
2015/11/23 Javascript
Jquery插件easyUi实现表单验证示例
2015/12/15 Javascript
JS实现兼容各种浏览器的获取选择文本的方法【测试可用】
2016/06/21 Javascript
JavaScript基于原型链的继承
2016/06/22 Javascript
通过修改360抢票的刷新频率和突破8车次限制实现方法
2017/01/04 Javascript
javascript自执行函数
2017/02/10 Javascript
Mac中安装nvm的教程分享
2017/12/11 Javascript
vue多级复杂列表展开/折叠及全选/分组全选实现
2018/11/05 Javascript
layui radio点击事件实现input显示和隐藏的例子
2019/09/02 Javascript
JavaScript创建、读取和删除cookie
2019/09/03 Javascript
在Echarts图中给坐标轴加一个标识线markLine
2020/07/20 Javascript
Vue Router中应用中间件的方法
2020/08/06 Javascript
Vue使用轮询定时发送请求代码
2020/08/10 Javascript
JS实现简单贪吃蛇小游戏
2020/10/28 Javascript
使用相同的Apache实例来运行Django和Media文件
2015/07/22 Python
wxpython中自定义事件的实现与使用方法分析
2016/07/21 Python
Python实现简单的四则运算计算器
2016/11/02 Python
python实现两个文件夹的同步
2019/08/29 Python
python Django 反向访问器的外键冲突解决
2020/05/20 Python
详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库
2021/01/24 Python
Joules美国官网:出色的英国风格
2017/10/30 全球购物
学校采购员岗位职责
2014/01/02 职场文书
创先争优活动党员公开承诺书
2014/08/29 职场文书
关于学习的决心书
2015/02/05 职场文书
2016暑期校本培训心得体会
2016/01/08 职场文书
win10双系统怎么删除一个系统?win10电脑有两个系统删除一个的操作方法
2022/07/15 数码科技