Python常用的内置序列结构(列表、元组、字典)学习笔记
作者:bear 发布时间:2021-02-18 21:25:45
标签:Python,序列
列表与元组
列表用大括号[]表示,元组用圆括号()表示。
列表可以修改,字符串与元组不可修改。
元组的分片还是元组,列表的分片还是列表。
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实现简单图片物体标注工具的具体代码,供大家参考,具体内容如下# coding: utf-8"&qu
- pandas 中 inplace 参数在很多函数中都会有,它的作用是:是否在原对象基础上进行修改inplace = True:不创建新的对象
- 今天的这篇文章呢,小编来介绍一下如何通过Python来创建各种形式的文件,这里包括了文本文件CSV文件Excel文件压缩文件XML文件JSO
- 前言ppi-cpi 剪刀差大家可能都听说过,通过这个指标可以了解当前的经济运行状况,小编为了学习 python 的图形绘制,通过爬
- <img :onerror="errpic" class="customerHead" :sr
- 在Dreamweaver 4.0中,我们就已接触了模板与库的概念,知道它们是批量生成风格类似的网页的好工具。如今在Dreamweaver M
- 跟着趣味开发python一起实现的弹球小游戏游戏运行效果实现流程1.创建游戏画布(创建ball类)2.增加几个动作(让小球移动、让小球来回反
- 本文实例讲述了C#使用checkedListBox1控件链接数据库的方法。分享给大家供大家参考,具体如下:在数据库中创建三个表: 学生信息表
- 本文实例讲述了python 队列基本定义与使用方法。分享给大家供大家参考,具体如下:队列的特征是:先进先出应用场景:消息通信、多进程间的协同
- 本文实例讲述了微信小程序MUI导航栏透明渐变功能。分享给大家供大家参考,具体如下:导航栏透明渐变效果实现原理1. 利用position:ab
- 本文实例讲述了Python编程实现数学运算求一元二次方程的实根算法。分享给大家供大家参考,具体如下:问题:请定义一个函数quadratic(
- <html> <head> <title> IE9 亲测JS各种去空格大全 </title>
- 图像增强算子几何变换算子图像的几何变换又称为图像空间变换, 它将一幅图像中的坐标位置映射到另一幅图像中的新坐标位置。图像缩放缩放只是调整图像
- 本文实例讲述了python通过邮件服务器端口发送邮件的方法。分享给大家供大家参考。具体实现方法如下:fromAddress = 's
- pycharm设置Console控制台输出自动换行解决方法File --> Settings… --> E
- 我对PostGreSQL只是一知半解,记录这个过程是希望如果以后微软技术方向的人遇到类似的需求,可以有个比较直接的的参考。在不熟悉的知识领域
- 在js中this的指向对于新手来说一定是个难题,但是如果你真正理解了的话,也就没什么问题啦,下面就来讲讲this吧。JS中,this的值取决
- 在项目中操作数据库的三大步骤安装操作 MySQL 数据库的第三方模块(mysql)通过 mysql 模块连接到 MySQL 数据库通过 my
- 由于Django没有象rails一样指定项目的目录结构规范,很多人都对django项目的目录结构要如何组织而感到困惑。为此我又新创建了一个开