7-(数字类型+字符串类型)内置函数
数字类型+列表类型
a=10 其实等于a=int() int() 前面是名字,后面是括号,相当于调用前面的工厂生产一个括号里的东西 通过int造一个10 赋值给a
相当于调用int传一个参数10 赋值给a
a=input( ) 通过input 把用户输入的东西造出来 赋值给a
a = 10
print(a)
b = input()
print(b)
c = print("hello world") #print不生产东西
print(c) #是空的 print不会生产一个字符串赋值给变量c
10
23 #输入23
23
hello world
None
数据类型转换
整型 int
定义类型 类型的转换
test = int("123456")
print(test, type(test))
print(bin(120)) # 十进制转换为二进制 零B (bin)开头的为二进制
print(oct(120)) # 十进制转换为八进制 零o (oct)表示八进制
print(hex(120)) # 十进制转换为十六进制 零x(hex)表示十六进制
print(int("0b1111000", 2)) #二进制转换为十进制
print(int("0o170", 8)) #八进制转换为十进制
print(int("0x78", 16)) #十六进制转换为十进制
123456 <class “int”>
0b1111000
0o170
0x78
120
120
120
二进制 Binary system
八进制 Octal number system
十进制 Decimal system
十六进制 Hexadecimal
浮点型
test1 = 3.12345 # 等于 test1=folat(3.12345) 定义类型
test = float("3.1415926") # 类型转换
print(test, type(test), type(test1))
字符串类型
定义
a = "hell world" # 等于 = str("hello world")
print(type(a))
a1 = str("hello world")
print(type(a1))
<class “str”>
<class “str”>
类型转换
字符串类型 str 可以把任意类型转换为字符串类型
a = str([1, 2, 3, 4])
print(type(a))
a1 = str(12345)
print(type(a1))
a2 = str(3.1415926)
print(type(a2))
a3 = str({"a1": 1, "a2": 3.1415926, "a3": "hahah"})
print(type(a3))
[1, 2, 3, 4] <class “str”>
12345 <class “str”>
3.1415926 <class “str”>
{“a1”: 1, “a2”: 3.1415926, “a3”: “hahah”} <class “str”>
索引取值
a = "Hello Man,Girl,Woman"
print(a[0], a[5]) # 正向取值 空格也是字符
print(a[-1], a[-6]) # 反向取值
a[0] = "h"
H
n ,
切片取值
a = "Hello Man,Girl,Woman"
print(a[0:6]) # 只能取值到0 1 2 3 4 5 顾头不顾尾
print(a) # 不改变原来变量的值
Hello
Hello Man,Girl,Woman
步长及反步长
a = "Hello Man,Girl,Woman"
print(a[0:6]) # 默认步长是1 # 取到第五个值 空格
print(a[0:6:2]) # 步长是2 取值是H l o
print(a[6:0:-2]) # 反向步长,当使用反向步长的时候 相当于倒着走 前面也需要反向 取不到0值所有没有H
print(a[:]) # 默认是从头取到尾 步长默认是1
print(a[::-1]) # 相当于字符串反转
Hello #这里还有一个空格的值
Hlo
Mol #取到的是第六个值 M 第四个 o 第三个l 顾头不顾尾 H 取不到
Hello Man,Girl,Woman
namoW,lriG,naM olleH
长度计算 len
a = "Hello Man,Girl,Woman" #共20个字符
print(len(a))
20
成员运算 in not in
判断某个字符是否在一个字符串中
a = "Hello Man,Girl,Woman"
print("H" in a)
print("o" not in a)
True
False
移除空格 strip
a = " woman "
a1 = "&&&&&&&&&&&&woman&&&&&&&&&&&"
a2 = "&&&&&&&&&&&&wo&&&man&&&&&&&&"
a3 = "7#^%^woman*&^%&%"
print(a.strip()) # 可以去除左右两侧的空格
print(a) # 不会改变原来变量的值
print(a1.strip("&")) #可以去除指定的符号
print(a2.strip("&")) #中间的符号无法去除
print(a3.strip("7#^%^*&")) # 可以去除多种符号
woman
woman
woman
wo&&&man
woman
去除空格的部分可以应用于用户输入
a = input(“请输入用户密码: “).strip() 防止用户输入出现空格导致用户名密码错误
字符串切分 split rsplit 字符串切成列表
把字符串按照某种分隔符隔开形成新的列表
a = "Hello Man,Girl,Woman"
print(a.split()) # 默认按照空格分割
print(a.split(",")) # 按照指定符号分割
print(a.split(",", 1)) # 指定分割次数为1次
[“Hello”, “Man,Girl,Woman”]
[“Hello Man”, “Girl”, “Woman”]
[“Hello Man”, “Girl,Woman”]
a = "Hello Man,Girl,Woman"
print(a.rsplit(",", 1)) #从右到左边寻找,按,分割,分割一次
print(a.split(",", 1)) #从左向右寻找 默认的 按,分割 分割一次
[“Hello Man,Girl”, “Woman”]
[“Hello Man”, “Girl,Woman”]
列表还原为字符串 join
列表拼接
a = ["Hello Man", "Girl,Woman"]
a1 = " ".join(a) #以空格形式连接列表a为字符串
a2 = ":".join(a) #以:形式连接列表a为字符串
print(a1, a2)
print(type(a1), type(a2))
Hello Man Girl,Woman Hello Man:Girl,Woman
<class “str”> <class “str”>
循环遍历
a = "Hello,"
for i in a:
print(i)
H
e
l
l
o
,
strip lstrip rstrip
a = "&&&&&&&&&&&&wo&&&man&&&&&&&&"
print(a.strip("&"))# 清除左右两侧
print(a.lstrip("&")) #清除左侧
print(a.rstrip("&")) # 清除右侧
wo&&&man
wo&&&man&&&&&&&&
&&&&&&&&&&&&wo&&&man
lower upper 大小写转换
a = "Hello Man,Girl,Woman"
print(a.lower()) #都变成小写
print(a.upper()) #都变成大写
hello man,girl,woman
HELLO MAN,GIRL,WOMAN
startswitch endswith 判断开头结尾
a = "Hello Man,Girl,Woman"
print(a.startswith("H"))
print(a.endswith("man"))
print(a.endswith("n"))
True
True
True
replace字符串替换
a = "Hello Man,Girl,Woman"
print(a.replace("l", "L"))#.replace字符串替换 前面是旧的 后面是新的 默认全部匹配替换
print(a.replace("n", "N", 1)) #后面的数字表示替换几次 n-N替换一次
print(a.replace("n", "N", 2)) #n-N替换2次 默认是全部替换的
HeLLo Man,GirL,Woman
Hello MaN,Girl,Woman
Hello MaN,Girl,WomaN
isdigit
判断是否纯数字
print("12345".isdigit())#判断是否是纯数字,用于用户年龄,工资等纯数字的判断
print("12qwe".isdigit())
True
False
age = input("请输入年龄")
if age.isdigit():
int(age) > 0
print("real")
请输入年龄23
real
find rfind index rindex count
a = "Hello Man,Girl,Woman "
print(a.find("n")) #第一个n出现的索引位置
print(a.rfind("n")) #最后一个n出现的索引位置
print(a.index("n")) #第一个n出现的索引位置
print(a.rindex("n")) #最后一个n出现的索引位置
print(a.find("A")) # 找不到的时候返回-1
print(a.count("n")) #统计n出现的次数
#print(a.index("A")) # 找不到会报系统异常错误error
8
19
8
19
-1
2
center ljust rjust zfill 对齐输出
print("alin".center(10, "&")) # 字符串居中对齐 填充*
print("alin".ljust(10, "&")) # 字符串左对齐 填充*
print("alin".rjust(10, "&")) # 字符串右对齐 填充*
print("alin".zfill(10)) # 原字符串右对齐,前面填充0
&&&alin&&&
alin&&&&&&
&&&&&&alin
000000alin
expandtabs 制表符
a = "Hello Man Girl Woman"
print(a.expandtabs(8)) # 把字符串中 转化为空格 8个空格
Hello Man Girl Woman
captalize swapcase title大小写转换
print("hello woman".capitalize()) #只留下 第一个首字母大写
print("HELLO WOMAN".capitalize()) #只留下 第一个首字母大写
print("hello woman".swapcase()) #所有字母统统大写 大小写全部转换
print("HELLO WOMAN".swapcase()) #所有字母统统小写 大小写全部转换
print("hello woman".title()) #所有单词首字母大写
print("HELLO WOMAN".title()) #所有单词首字母大写
Hello woman
Hello woman
HELLO WOMAN
hello woman
Hello Woman
Hello Woman
is 数字识别 isnumberic isdigit isdecimal
is系列 判断真假
print("alinx".islower()) #islower 都是小写才为真
print("ALinx".isupper()) #isupper 都为大写才为真
print("Hello world".istitle()) #.istitle 所有单词首字母大写才为真
print("2121swsawe".isalnum()) # 字符串由字母或数字组成结果为True 不能有其它的
print("awqqd".isalpha()) # 字符串由由字母组成结果为True 必须只有字母
print("a34d".isalpha()) # false
print(" ".isspace()) # 字符串只有空格组成结果为True
print("plased".isidentifier())# (a-z)和(0-9)或下划线(_)组成 不能以数字开头,可以用来检测变量名是否合规
print("fdfdsafads2132".isidentifier())
print("12323wdsa".isidentifier())
True
False
False
True
True
False
True
True
True
False
数字判断
num1=b”6″ #bytes
num2=u”6″ #unicode,python3中无需加u就是unicode
num3=”六” #中文数字
num4=”Ⅳ” #罗马数字
isdigit
只能识别二进制和unicode 不认识汉字数字和罗马数字
num1=b"4"
num2=u"4"
num3="四"
num4="Ⅳ"
print(num1.isdigit())
print(num2.isdigit())
print(num3.isdigit())
print(num4.isdigit())
True
True
False
False
isnumeric
可以识别 汉字数字 罗马数字 unicode数字 最强
num1=b"4"
num2=u"4"
num3="四"
num4="Ⅳ"
#print(num1.isnumeric()) #byte数字直接报错
print(num2.isnumeric()) # True
print(num3.isnumeric()) # True
print(num4.isnumeric()) # True
True
True
True
isdecimal 只能识别 unicode数字
num1=b"4"
num2=u"4"
num3="四"
num4="Ⅳ"
#print(num1.isdecimal()) # byte直接报错
print(num2.isdecimal()) # True
print(num3.isdecimal()) # True
print(num4.isdecimal()) # True
True
False
False