上一章节介绍了三种可变的数据类型,这一章熟悉一下三种不可边数据类型(int类型,tuple类型,str类型)
int类型
Python中的int类型数据和所有语言一样都表示整型,但是Python中使用数据是不需要定义它们的类型,可以直接赋值,所以说如果你给一个变量赋了一个整数,Python就相当于默认是你定义的一个int类型。
tuple类型
Python 的元组与列表类似,不同之处在于元组的元素不能修改。
元组使用小括号(),列表使用方括号” [ ] ”。 注意,这里的逗号是必须存在的,尤其是当元组只有一个元素的时候,后面必须添加逗号。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
元组方法
元组创建
a. 使用圆括号( )创建
b. 使用tuple函数创建
tuple函数能够将其他数据结构对象转换成元组类型。
将list转换为元组
fruits = [‘apple’,’banana’,’orange’]
mytuple = tuple(fruits)
元组常用方法与函数
元组的方法:
count() 记录某个元素在元组中出现的次数
index() 获取元素在元组当中第1次出现的索引位置
操作元组的函数
Sorted() 创建对元素进行排序后的列表
Len() 获取元组长度
元组解包
将元组中各个元素赋值给多个变量的操作。
a,b,c = tuple([“x”,”y”,”z”])
Tuple=("C++","C#","Python","JAVA","C#","HTML","C++","C++")
print(Tuple.count("C++")) #计数,某一个元素出现的次数
print(Tuple.index("Python",4,7)) #查找,在某一段区间查找某一个元素,返回起下标
print(type(Tuple)) #打印类型
#3
#2
#<class 'tuple'>
str类型
基本变换
Str1="abcdefghijklmn.com"
Str2="ABCdefGh215KL"
# 1、首字母大写
print(Str1.capitalize())
#Abcdefghijklmn.com
# 2、计数(某一个元素出现的次数)
print(Str1.count("f"))
#1
# 3、整个字符串大写变小写
print(Str2.casefold())
#abcdefgh215kl
# 4、居中操作,用*填充
print(Str1.center(50,"*"))
#****************abcdefghijklmn.com****************
# 5、格式转换(转换编码方式)
print(S.encode(encoding="utf-8"))
print(Str1.encode(encoding="GBK"))
#b'abcdefghijklmn.com'
#b'abcdefghijklmn.com'
基本格式化操作
name="{name} is {age}" #格式化操作,其中{name} 和{age}只是占位符
print(name)
print(name.format(name="UZI",age=19))
#{name} is {age}
#feng is 19
print(name.format_map({"name":"UZI","age":"19"}))
#feng is 19
print("%s is " % "UZI") # 字符串操作,填入的参数是元组
print("%s is " % ("UZI"))
print("%s is %s" % ("UZI",1433223))
print("%s is %d" % ("UZI",1433223))
#UZI is
#UZI is
#UZI is 1433223
#UZI is 1433223
# print("%s is %d" % "UZI",1433223) #(会报错)默认追加一个参数
print("%s is %d" % ("UZI",1433223)) #正确
#UZI is 1433223
s="53"
print(s.zfill()) #用0填充,补足5位数字
#00053
print("+".join(["5","d","4"])) #join格式化
#5+d+4
S="It's a Lovely Day Today"
print(S.rjust(30,"+")) #向左格式化打印
#+++++++++++++++++++++++It's a Lovely Day Today
S="It's a Lovely Day Today"
print(S.ljust(30,"+")) #向右格式化打印
#It's a Lovely Day Today+++++++++++++++++++++++
基本判断操作
S="1564646hfiuhf" #判断是否由数字、字母或者数字字母组成
print(S.isalnum())
#True
S="shuifhusGYGKJK" #判断是否由字母组成(包括大小写)
print(S.isalpha())
#True
S="sffjskb" #判断是否是十进制数
S1="5746164486"
print(S.isdecimal())
print(S1.isdecimal())
#False
#True
S="8956.15454" #判断是不是整数
print(S.isdigit())
#False
S="153__523agda" #判断是不是一个合法的标识符
print(S.isidentifier())
#False
S="adhakbka" #判断是不是小写
print(S.islower())
#True
S="abdk782716" #判断是不是数字
print(S.isnumeric())
#False
S=" " #判断是不是空格
print(S.isspace())
#True
S="Shhadn Ksbdf Nsf" #判断字符串每一个单词是不是大写开头
print(S.istitle())
#True
S="hf sjf" #判断字符串能不能打印
print(S.isprintable())
#True
S="GSBDBNK" #判断是不是大写
print(S.isupper())
#True
S="GDDIHUISH" #大写变小写
print(S.lower())
#gddihuish
S="aandksahk" #小写变大写
print(S.upper())
#AANDKSAHK
更多
S="\t\t\tbgfjb" #去掉左边空格和回车
print(S)
print(S.lstrip())
# bgfjb
#bgfjb
S="algajklh\n" #去掉右边空格和回车
print(S+"bskfshsf")
print(S.rstrip()+"bfsjbcjk")
#algajklh
#bskfshsf
#algajklhbfsjbcjk
S="\tjaahiusuhfi\n" #去掉两端全部空格和回车
print(S.rstrip()+"hjfszfjkf")
# jaahiusuhfihjfszfjkf
p=str.maketrans("152341534","sgeufbuhg") #自定义格式化(形成对照表),,,两字符串长度必须一致
print("5243".translate(p))
#uegh
s="uahfblfbzkbf" #字符串替换
print(s.replace("b","55",2))
#uahf55lf55zkbf
S="ahdklblc" #从右向左查找
print(S.rfind("d"))
#2
s="ufhlwauifsheufiwh" #字符串分割
l=s.split("s")
l.append("liang")
print(l)
print(" ".join(l))
s=s.replace("s"," ")+" liang"
print(s)
#['ufhlwauif', 'heufiwh', 'liang']
#ufhlwauif heufiwh liang
#ufhlwauif heufiwh liang
s="\nbasdbak\n" #识别换行
print(s)
print(s.split("\n"))
print(s.splitlines())
#
#basdbak
#
#['', 'basdbak', '']
#['', 'basdbak']
s="akfnkHUGNKBKhhkhNkug" #将字符串中的大小写互换
print(s.swapcase())
#AKFNKhugnkbkHHKHnKUG
s="hello word" #将字符串中每一个单词首字母变大写
print(s.title())
#Hello Word