内置数据类型(中)---Python基础学习笔记(五)

一、字符串(不可改变对象)
1、定义:有序的字符的集合,用单引号或者双引号表示,支持索引,切片
2、相关操作:
设sx=‘abcd’,sy=‘wxyz’
• 合并:sx+sy
• 重复:sx*3
• 索引:sx[0],sx[-1]
就是编号,通过这个编号就能找到相应的存储空间。
正数从左到右,负数从右到左。
切片:sx[:],sx[:3],sx[2:],sx[0:4:2]
是指对操作对象截取其中的一部分
语法:[起始:结束:步长:]
注意:选取的区间属于左闭右开,即从‘起始’位开始,到‘结束’位的前一位结束(不包含结束位本身)。
元素存在性:’a’ in sx,’b’ not in sy
函数操作:设mystr = ‘hello world itcast and itcastcpp’
§ Find:检测str是否包含在mystr中,如果是返回开始的索引值,否则返回-1
Mystr.find(str,start=0,end=len(mystr))
§ Index:根find()方法一样,只不过如果str不在mystr中会报一个异常
Mystr.index(str,start=0,end=len(mystr))
§ Count:返回str在start和end之间在mystr里面出现的次数
Mystr.count(str,start=0,end=len(mystr))
§ Replace:把mystr中的str1替换成str2,如果count指定,则替换不超过count次
Mystr.replace(str1,str2,mystr.count(st1))
§ Split:以str为分隔符切片mystr,如果maxsplit有指定值,则仅分隔maxsplit个字符串
Mystr.split(str=”“,2)
§ Capitalize:把字符串的第一个字符大写
Mystr.capitalize()
§ Title:把字符串的每个单词首字母大写
Mystr.title()
§ Startswith:检查字符串是否是以obj开头,是则返回true,否则返回false
Mystr.startswith(obj)
§ Endswith:检查字符串是否以obj结束,如果是返回true,否则返回false
Mystr.endswith(obj)
§ Lower:转换mystr中所有大写字符为小写
Mystr.lower()
§ Upper:转换mystr中的小写字母为大写
Mystr.upper()
§ Ljust:返回一个原字符串左对齐,并使用空格填充至长度width
Mystr.ljust(wdith)
§ Rjust:返回一个原字符串右对齐,并使用空格填充至长度width
Mystr.rjust(wdith)
§ Center:返回一个原字符串居中,并使用空格填充至长度width
Mystr.center(width)
§ Lstrip:删除mystr左边的空白字符
Mystr.lstrip()
§ Rstrip:删除mystr字符串末尾的空白字符
Mystr.rstrip()
§ Strip:删除mystr字符串两端的空白字符
Mystr.strip()
§ Rfind:类似于find()函数,不过是从右边开始查找
Mystr.rfind(str,start=0,end=len(mystr))
§ Rindex:类似于index(),不过是从右边开始
Mystr.rindex(str,start=0,end=len(mystr))
§ Partition:把mystr以str分割成三部分,str前,str和str后
Mystr.partition(str)
§ Rpartition:类似于partition()函数,不过是从右边开始
Mystr.rpartition(str)
§ Splitlines:按照行分隔,返回一个包含各行作为元素的列表
Mystr.splitlines()
§ Isalpha:如果mystr所有字符都是字母,则返回true,否则返回false
Mystr.isalpha()
§ Isdigit:如果mystr只包含数字则返回true,否则返回false
Mystr.isdigit()
§ Isalnum:如果mystr所有字符都是字母或数字,则返回true,否则返回false
Mystr.isalnum()
§ Isspace:如果mystr中包含空格,则返回true,否则返回false
Mystr.isspace()
§ Join:mystr中每个字符后面插入str,构造出一个新的字符
Mystr.join(str)
raw字符串:全部化为普通字符r’\n\t\a 123abc’

二、列表-list(可变对象)
1、定义:元素类型不限并可嵌套,用[]表示,支持索引、切片
2、相关操作:设sx=[1,2,3,4] sy=[5,6,7,8]
• 合并:sx+sy
• 重复:sx*3
• 索引:sx[0],sx[-1],s[0][0]
• 切片:sx[:],sx[:3],sx[2:],sx[1:3],sx[0:4:2]
• 元素存在性:1 in sx
• 函数操作:
§ append:通过append可以向列表添加元素
Sx.append(obj)
§ extend:通过extend可以将另一个集合中的元素逐一添加到列表中
Sx.extend(obj)
§ insert:在指定位置index前插入元素object
Sx.insert(index,object)
§ in,not in:所谓的查找,就是看看指定的元素是否存在
§ index,count:index和count与字符串中的用法相同
§ del:根据下标进行删除或者删除整个列表
Del sx[0]
Del sx
§ pop:删除最后一个元素
Sx.pop()
§ remove:根据元素的值进行删除
Sx.remove(obj)
§ Sort:将list按照特定顺序重新排列,默认为由小到大,参数reserve=true可以改为倒序
Sx.sort()
Sx.sort(reverse=true)
Sx.sort(key=str.lower,reserve=true)
§ reverse:将list逆置
Sx.reverse()

三、元组-tuple(不可变对象)
定义:其余与list相同,用()表示

四、字典(可变对象)
1、定义:不支持索引,但是可以通过键读取元素,属于可变映射类型,用{key:value}表示
2、相关操作:
▪ D={}:空字典
▪ D={‘A’:2,’B’:3}:两个键值对的字典
▪ D={‘A’:{‘B’:3,’C’:4}}:字典嵌套
▪ D=dict.fromkeys([‘a’,’b’]):其他创建方式
▪ D=dict(zip(keylist,valslist))
▪ D[‘A’]:以键取值
▪ D[‘A’][‘B’]
▪ 2 in D:成员关系
▪ D.keys():键的列表
▪ D.values():值的列表
▪ D.items():值键对的列表
▪ D.copy():赋值
▪ D.get(key,default):获取值
▪ D.update(D2):合并
▪ D.pop(key):删除
▪ Len(D):长度
▪ D[key]=42:新增,修改
▪ Del D[key]:删除
▪ List(D.keys())
▪ Dict.has_key(key):如果key在字典中,返回true,否则返回false
附录:
内置函数:
int(字符串,基数):将数字字符串以技术形式转为整数十进制
int(浮点数):将浮点数转换为整数十进制
hex(整数):将十进制整数转为十六进制
oct(整数):将十进制整数转为八进制
bin(整数):将十进制整数转为二进制
pow(底数,幂):计算底层数的几次幂

课后题:
(1)字符串统计:大写字母、小写字母、数字、空格、其余
(2)判断一个字符串是否是回文
(3)获取两个字符串中的最大相同子串
(4)输入一串字符串,分别统计各大写字母出现的次数,并且按照字母出现的多少输出(先输出出现次数多的,次数相同的按字母顺序输出,不出现的字母不输出)
(5)list最值问题
(6)选择排序
(7)冒泡排序
(8)插入排序
(9)二分查找
(10)输入20个数,将列表中元素逆置后输出
(11)输入10个数字,将其前5个元素与后5个元素对换,即第一个与第六个元素互换,第二个与第七个元素互换,以此类推
(12)输入一个4×4矩阵,求对角线元素之和
(13)输入一个矩阵,并输出其转置矩阵
(14)计算两个矩阵的乘积
(15)编写一个候选人得票的统计程序,设有N个候选人,每次输入一个的票的候选人的名字,要求最好输出每个人的得票结果
(16)编写程序,完成“名片管理器”项目
需要完成的基本功能:
添加名片
删除名片
修改名片
查询名片
退出系统
程序运行后,除非选择退出系统,否则重复执行功能

猜你喜欢

转载自blog.csdn.net/qq_42197548/article/details/82623936