python常用的数据类型使用

常用的数据类型使用(type()函数可以查看数据类型)

数值类型
整型 int

浮点型 float

复数型 complex

字符串类型  str

列表 list

字典 dict

元组 tuple

集合 set

布尔类型 bool
1.数值类型
数值类型对应的数据的值是不可以变的

num = 11

num = 12.0

如果发生了改变 只是新生成一个数据 与原来的数据无关
整型(int):代表的数据都是整数  

java为例:(byte 1B	short 2B  int 4B  long 8B)

byte =[-128,127 ]  了解数据类型的取值范围

浮点型(float:代表的数据都是小数

也可以使用科学计数法来表示的  小数都有精确度  Python解释器

注意:尽量不要使用浮点型来进行大小的判定 因为受限于精度度 可以能会导致结果出现误差

复数型(complex32+5j【了解:实部和虚部】
常用方法

系统提供的内置方法

num = 11
print(num)
num = 12
print(num)
num=0.1+0.2
print(num) # 0.30000000000000004
#使用浮点型进行运算可能会产生误差,所以尽量使用int类型或者变相运算
num = (0.1*10 + 0.2*10)/10
print(num)

# 系统提供的内置方法
# 1.绝对值 abs
res = abs(-10)
print(res) # 10

# 2.比较两个数的大小
"""
版本2.x中
    cmp(x,y)
    x>y 返回结果1
    x<y 返回结果-1
    x==y 返回结果0
版本3.x中
    1表示True  0表示False  
    (x<y)  -1
    (x>y)   1
     x==y   0
    (x>y)-(x<y)
"""
res = (12>12)-(12<12)
print(res) # 0-0=0

# 3.在序列中获取最大的值
# 12,55,1,25,88,99,120
res =max(12,55,1,25,88,99,120)
print(res) # 120

# 4.最小值
res = min(12,1)
print(res) # 1

# 5.求幂数 x的y次方
res = pow(2,3)
print(res)# 8
res = 2**3
print(res)# 8

# 6.四舍五入
#help(round)
"""
round(number[, ndigits]) -> number
number:将number进行四舍五入
ndigits;设置保留的小数的位数  如果不传值 默认0个小数
"""
res = round(1.75,1)
print(res) # 1.8
"""
系统提供的math模块中的方法 
Python API 中文版
"""
2.字符串类型
标识:由单引号和双引号 包含的单个或者多个字符

比如:“aaaa”  "21123" '张三'
# 声明一个字符串(双引号或单引号)
str0 = "good morning"
print(str0) # good morning

# 字符串中的运算
# + 号运算  拼接字符串
# * 翻倍拼接
str1 = "hello"
print(str1+str0) # hellogood morning

str2 = str1+str(10.0)
print(str2) # hello10.0

# * 的运算
str0 = "我..."
res = str0*8
print(res) # 我...我...我...我...我...我...我...我...

# 获取操作
# 1.获取字符串的总长度
str0 = "good good study day day up"
res = len(str0)
print(res)  # 26

# 2.获取指定位置上的某个字符
"""
在字符串中的字符 都有自己编号 编号是从0开始的 26个字符0-25
编号叫做索引、脚标、下标 
还可以通过负数来取字符 -len(str0) ~ -1
"""
res =str0[-26]
print(res) # g

res =str0[-27] # 错误示范
IndexError: string index out of range
# IndexError: string index out of range 索引不能越界

# 3. 获取子串
"""
切片
[start:stop[:step]]
start -- 指定的起始位置 如果不传值 默认从0开始
stop  -- 指定结束的位置  如果不传值 默认到最后结束
step  -- 步长 间隔步长多少个 在取值 默认1
[start,stop) 前闭后开和数学的区间一样
"""
str0 = ‘good good study day day up’
sub = str0[:]
print(sub) # good good study day day up

sub = str0[2:]
print(sub) # od good study day day up

sub = str0[:5]
print(sub) # good

sub = str0[2:11]
print(sub) # od good s

sub = str0[::2]
print(sub) #go odsuydydyu

sub = str0[::-1] # 如果步长为-1 起始位置和结束位置不传值 倒序
print(sub) # pu yad yad yduts doog doog

# 获取某个字符串第一次出现的位置
"""
find(sub[, start[, end]])
如果找到了就返回第一次出现的位置 否则返回-1
"""
# good good study day day up
index = str0.find("day")
print(index) # 16

# 从那个位置开始找
index = str0.find("day",17)
print(index) # 20

# 找到哪里结束
index = str0.find("day",0,15)
print(index) # -1

# 最后一次出现的位置
index = str0.rfind("o",5)
print(index) # 7

# 获取序列中重复的个数
"""
count(sub[, start[, end]])
"""
str0 = ‘good good study day day up’
str1 = "kkkabckkkabc123kkk"
res = str0.count('day')
print(res) # 2
res = str1.count("kk",5)
print(res) # 2

# 切割字符串 以指定的字符进行切割 可以切成多个子串
str0 = "good morning nice to meet you"
res = str0.split(" ")
print(res) # ['good', 'morning', 'nice', 'to', 'meet', 'you']
print(type(res)) # list
# 遍历
# for item in  res:
#     print(item)
# 限制切几刀
res = str0.split(" ",3)
print(res) # ['good', 'morning', 'nice', 'to meet you']  3刀4段

# 去除字符串两边的字符序列
"""
\n \t 显示的都是空白
默认去掉两边的空白(首和尾)
"""
str0 = "\nabc   abc\n"
print(str0)  
			#	abc   abc

str0 = str0.strip()
print(str0,end="") # abc   abc


print("---------------------------------")
str0 = "123abcdefg123"
str0 = str0.strip("123")
print(str0) # abcdefg

# 去掉左边的123
str0 = str0.lstrip("123")
print(str0) #abcdefg123
#去掉右边的123
str0 = str0.rstrip("123")
print(str0) # 123abcdefg

"""
字符串格式化
r 格式化字符串  --- 保持路径中\的本意 无需使用\\进行转义
\ 在操作系统下有特殊的意义  --- 具有转义的含义
  将指定字符转义成其他含义
   例如: n  --- \n换行
          r  --- \r 回车
          t  --- \t 制表符
        如果你要保持本意 需要再次使用\进行转义 
"""
path = r"D:\ChromeCoreDownloads\test\demo\xxx"
print(path)

# 显示多行字符串
str0 = "good\nmorning\nnice to meet you"
print(str0)

# 显示多行  保持原有格式输出
content ="""
good
morning
nice to meet you
"""
print(content)

"""
显示结果如下:
he is a "bad" man
"""
res = "he is a \"bad\" man"
print(res)

"""
占位符:
%s  -- 对象的数据 字符串 列表..
%d  -- 整数
       %0nd --- 保持整数显示n位数的格式
%f  -- 小数
       %.nf --- 保留小数n位小数
.format
	{:03d}---保持整数显示n位数的格式
	{:.2f}---保留小数n位小数
案例:
    4       89.57
    10      99.71
    100     88.4
把以上数据进行显示如下
我的编号是004 成绩是89.6
我的编号是010 成绩是99.7  
我的编号是100 成绩是88.4
print("我的编号为:%03d,我的成绩为:%.1f"%(4,89.69))
print("我的编号为:%03d,我的成绩为:%.1f"%(10,99.71))
print("我的编号为:%03d,我的成绩为:%.1f"%(100,88.4))
#.format
print("我的编号为:{:03d},我的成绩为:{:.1f}".format(10,88.41))
"""
# 转换方法
# 1.将字符串中的所有字母转换化为小写字母,其他字符不变
str0 = "aHello good"
res = str0.lower()
print(res)
# 2.将字符串中的所有字母转换化为大写字母,其他字符不变
res = str0.upper()
print(res)
# 3. 将大写变小写,小写变大写
res = str0.swapcase()
print(res)
# 4. 第一个字符变为大写,其它变为小写
res = str0.capitalize()
print(res)
# 5. 将每个单词的首字母变大写其余小写【每个单词之间以空格隔开】
res = str0.title()
print(res)


# 设置字符串的显示位置
# 1. 在指定字符串宽度条件下 字符显示居中
str0 ="good"
res =str0.center(20)
print(res)
# 在其他位置填充字符
res =str0.center(20,'*')
print(res)
# 居左str0.ljust()  居右str0.rjust()
res = str0.ljust(20,'*')
print(res)

# 字符串判定操作
# 1.判定字符串是否以指定内容开头
path = r'test.png'
res = path.startswith("test.png")
print(res)
# 2.判定字符串是否以指定内容结尾
res = path.endswith(".png")
print(res)
# 3.判定字符串是否为纯数字
str0="110"
res = str0.isdigit()
print(res)
# 4.判断字符串是否全是字母
str0="abc"
res = str0.isalpha()
print(res)


# 替换字符串
str0 = "abc1def1opqaaaa"
res = str0.replace("a","A",2)
print(res)

# 使用间隔拼接序列
res = str0.split("1")#以1作为切割点进行分割
print(res)
# 拼接回去
value = "1".join(res)
print(value)

# 字符串中对应字节数据
"""
utf-8的编码方式
gbk -- 一个汉字占2个字节
utf-8  -- 一个汉字占3个字节
"""
str0 = "您好"
res = str0.encode("utf-8")
print(res) 
# 解码
value = res.decode("utf-8")
print(value)


res = str0.encode("gbk")
print(res)
# 解码
value = res.decode('gbk')
print(value)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值