整型
用途:记录年龄、等级、号码等
定义方式如 age = 18 本质 # age = int(18)
整型只能存一个值而且是不可变类型
int()方法能将字符串转为整型
需要注意的是使用int只能转纯数字的字符串,有小数点也不行
浮点型
用途:记录身高、体重、薪资等
定义方式如 height= 185.1 本质 # height= float(185.1)
浮点型只能存一个值而且是不可变类型
float()方法能将字符串和整型转为浮点型
需要注意的是使用float方法只能转纯数字的字符串,可以有小数点
python可以使用int()方法将其他进制转10进制
int()可以传二个参数,第一个表示要转的进制数,第二个参数表示要第一个参数是什么进制 然后就能转成十进制
10进制转二进制
使用bin()方法,bin(10进制) 结果显示为 0b二进制数
# print(bin(12)) # 0b1100
10进制转八进制
使用oct()方法,oct(10进制) 结果显示为 0o八进制数
# print(oct(12)) # 0o14
10进制转16进制
使用hex()方法,hex(10进制) 结果显示为 0x16进制数
# print(hex(12)) # 0xc
用途:记录描述性的状态,比如人的名字、地址、性别
定义方式:在' ', " ", ''' ''', """ """内包含一系列的字符
只能存一个值,有序排列,不可变类型
字符串操作
# 索引取值: 字符串[index]
正索引可以正向取和负索引可以反向取,不能改只能取
# 切片:从一个大的字符串中截取一段新的小字符串
字符串[索引位:索引位:步长]
左边的固定就是头,右边固定就是尾 没有按数字来分头尾,步长不写默认是1
切片取值默认是从左往右的
正步长左索引位需比右索引位小
负步长左索引需比右索引大
#长度:len(字符串)
#成员运算in和not in: 判断一个子字符串是否存在于一个大的字符串中
子字符串 in 大字符串 子字符串 not in 大字符串
# 去掉字符串左右两边的字符,不管中间的
使用strip()方法,将想去除的字符作为参数传入
不传参默认去除字符串首尾空格,
lstrip()只去除左边字符
rstrip()只去除右边字符
# 切分split:针对按照某种分隔符组织的字符串,可以用split将其切分成列表,进而进行取值,切分的顺序从左往右
字符串.split()传入要切分的的字符和要切分的次数,不传入切分次数默认全切
rsplit()右边开始切
#循环:可以使用for循环遍历出字符串中的字符
# lower()方法可以使字符串全小写
# upper()方法可以是字符串全大写
# startswith()方法可以判断字符串是否以什么什么开头
# endswith()方法可以判断字符串是否以什么什么结尾
# format的三种玩法(python推荐使用format做格式化输出)
第一种 按位置占位 跟%s原理一致
使用{}占位 字符串.format(各位置显示内容以逗号隔开)
# str1 = 'my name is {} my age is {}'.format('jason',18)
第二种 按索引占位
使用{索引位}占位 字符串.format(各索引位要显示的内容以逗号隔开)
# str1 = 'my {1} name is {0} my {0} age is {0}'.format('egon',18)
第三种 指名道姓占位(关键字传参)
使用{关键字}占位 字符串.format(各关键字=要显示的内容以逗号隔开)
# str1 = 'my {name} name is {age} my {name} age is {name}'.format(name='jason',age=18)
# join() 将容器类型中的多个元素通过指定字符拼接成一个字符串
# ls = ['1','a','b'] res = '|'.join(l) 结果 # 1|a|b
# replace()将字符串中字符替换成指定字符
replace(被替换字符,要替换字符,替换次数) 次数不写默认全部替换
# str1 = 'abc' str1.replace('a','b') 结果 # 'bbc'
# isdigit() 判断字符串中包含的是否为纯数字
# find(字符串,头,尾) 头,尾是索引的范围不传查找所有,返回结果的是字符串首字符所在的索引值,找不到的时候不报错返回的是-1,
# rfind(字符串,头,尾) 与find功能但从末尾开始查找
# index(字符,头,尾) 头,尾是索引的范围不传查找所有,返回结果是所传字符所在的索引值
# rindex(字符,头,尾) 作用与index()相同,返回结果是所传字符末尾所在的索引值
# count() 统计字符在字符串中出现的次数
#
# center(字符串的总长度,填充字符)返回一个原字符串居中,并使用填充字符填充至长度 为总长度的新字符串。默认不写填充字符为空格
# ljust(字符串的总长度,填充字符)返回一个原字符串左对齐,并使用填充字符填充至指定长度的新字符串。如果指定的长度小于原字符串的长度则返回原字符串,默认不写填充字符为空格
# rjust(字符串的总长度,填充字符)返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串。如果指定的长度小于字符串的长度则返回原字符串,默认不写填充字符为空格
# zfill(字符串的总长度)返回指定长度的字符串,原字符串右对齐,前面填充0
# expandtabs(空格数)
把字符串中的 tab 符号('\t')转为空格,tab 符号('\t')默认的空格数是 8
# captalize() 首字母大写
# swapcase() 大小写互换
# title() 每个单词的首字母大小
num1=b'4' #bytes
num2=u'4' #unicode,python3中无需加u就是unicode
num3='壹' #中文数字
num4='Ⅳ' #罗马数字
# isnumeric() 不支持判断bytes 能识别unicode,中文数字,罗马数字
# isdecimal() 不支持判断bytes 能识别unicode 只识别普通的阿拉伯数字
# isdigit() 支持判断bytes 能识别bytes,unicode
识别为True,不识别为False
用途:存放多个值,可以根据索引存取值
定义方式:在[]内用逗号分割开多个任意类型的值
# 按索引存取值
# 切片
#追加,尾部添加一个字符串
列表.append(要添加的数据)
# 任意位置添加元素
列表.insert(要添加的索引位,要添加的数据)
# 添加容器类型数据
列表.extend(容器类数据) 内部原理for循环容器一个个追加到列表的尾部
# 长度
len(列表)
# 成员运算in和not in
数据 in 列表 数据 not in 列表
# 删除
del 列表[索引] del适用于所有的删除操作
列表.pop(索引) 按照索引弹出元素,不写索引默认尾部弹出
指定删除
列表.remove(要删除的数据)
# 循环
使用for循环可以遍历出列表中所有数据