7-(数字类型+字符串类型)内置函数

数字类型+列表类型python

a=10 其实等于a=int() int() 前面是名字,后面是括号,至关于调用前面的工厂生产一个括号里的东西 经过int造一个10 赋值给agit

至关于调用int传一个参数10 赋值给aapi

a=input( ) 经过input 把用户输入的东西造出来 赋值给aide

a = 10
print(a)
b = input()
print(b)
c = print("hello world") #print不生产东西
print(c)  #是空的  print不会生产一个字符串赋值给变量c

10
23 #输入23
23
hello world
Nonespa

数据类型转换

整型 int

定义类型 类型的转换code

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 systemip

八进制 Octal number systemci

十进制 Decimal systemunicode

十六进制 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\tMan\tGirl\tWoman"
print(a.expandtabs(8))  # 把字符串中\t转化为空格  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