数据分析-爬虫学习笔记(3)

二、常用的数据类型的使用

文章目录

1.数值类型

数据类型对应的数据的值是不可变量

num = 11

num = 12

如果发生了改变的话 只是新生成了一个数据 与原来的数据无关

代表的整数 python3中数据的大小是没有限制的 可以当做long来使用 只有int但是有long的特性

2.常用方法

系统默认提供内置方法

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

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

#3.获取序列中的最大值
# 1 2 3 5 8 7 912 213
res = max(1,2,3,5,8,7,912,213)
print(res)

# 4.获取序列中的最小值
res = min(73,45)
print(res)

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

# 6.四舍五入
res = round(1.25)
print(res)

# help()
help(round)

# 想保留一位小数
res = round(1.75,1)
print(res)

# 系统还提供了math模块
3.字符串类型

标识:由单引号或者双引号包含的单个或者多个字符

“a” “12345”

# 常用字符串方法
# 1.声明一个字符串
str0 = "good morning"
print(str0)

# 2.字符中的运算  +  *
str1 = "hello "
str2 = str1 + str0
print(str2)
print(str0)
print(str1)
# + 号
# str3 = str2 + 10 # TypeError: must be str, not int
# print(str3)  字符不能和整数拼接
str3 = str2 + str(10)
print(str3)

# * 号  翻倍拼接
str0 = "你..."
res = str0*8
print(res)

# 获取操作
# 3.获取字符串的字符长度
str0 = "good good study day day up"
res = len(str0)
print(res)
# 4. 获取某个位置上的字符
"""
在字符串中的字符 也有自己的编号 编号从0开始 
26个字符  0 ~ 25   0 ~ len(str0)-1
也可以用负数来表示:  -len(str0) ~ -1
"""
res = str0[-26]
print(res)

# 5.切片   获取子串
"""
[start:stop[:step]]
start -- 指定的起始位置 如果不传值 默认是0
stop -- 指定的结束位置 如果不传值 默认到最后结束
stop -- 步长  间隔多少个  默认是1
[start:stop) 前闭后开

"""
print(str0)

sub = str0[:]
print(sub)

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)

sub = str0[10:1:-1]
print(sub) # s doog do

# 获取某个字符第一次出现的位置
'''
find(sub[,start,end])
找到就放回这个字符第一次出现的位置 否则-1
'''
res = str0.find("day")
print(res) # 16 第一次出现的位置

# 从那个开始到结束
index = str0.find("day",0,15)
print(index) # -1

index = str0.find("day",17)
print(index) # 20

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

# 获取序列中重复的个数
"""
count([,start,end])
"""
# good good study day day up
num = str0.count("day")
print(num)

num = str0.count("o",5)
print(num)

num = str0.count("o",2,4)
print(num) # 1

str1 = "akkabckkkk123"
num = str1.count("kk")
print(num)

print(str0[2:4])  #good good   ood    od
# 前闭后开  0 -  4

# 切割字符串
"""
split()
"""
str0 ="good morning nice to meet you"
res = str0.split(" ")
print(res)
# for item in res:
#     print(item)

# 可以传入第二个参数 限制切几刀
res = str0.split(" ",3)
print(res)

# 取出字符串两边指定的字符序列
str0 = "\nabc    abc\n"
print(str0,end="")
str0 = "123abcdef123"
res = str0.strip("123")
print(res)
# 只去掉左边
res = str0.lstrip("123")
print(res)
res = str0.rstrip("123")
print(res)

# 字符串的格式化操作
"""
r 格式化字符串   -- 保持路径中\的本意 无需使用\\进行转义
\ 代表转义
"""
path = r"D:\Anaconda3\sip\PyQt5\QtTest\test"
print(path)

print("\"")


# 显示多行字符串
"""
good
nice to meet you too
beautiful
"""
content = "good\nnice to meet you too\nbeautiful"
print(content)

# 保持字符串原格式输出
content = """
good
nice to meet you too
beautiful
"""
print(content)

"""
he is a "bad" man
"""
res = "he is a 'bad' man"
print(res)
res = "he is a \"bad\" man"
print(res)

# 占位符
"""
%s  -- 对象的数据 字符串  列表...
%d  -- 整数   12  012 001
       %0nd -- 保持整数显示n位数的格式
%f  -- 小数
       %.nf -- 小数保留n位小数
想把以下数据进行展示:
4   89.57
10  99.71
100 88.4
显示内容:
我的编号是004 成绩是89.6
我的编号是010 成绩是99.7
我的编号是100 成绩是88.4
"""
num = 4
score = 89.57
res = "我是编号是"+str(4) + "成绩是"+str(round(score,1))
print(res)

res = "我的编号是%03d 成绩是%.1f" % (num,score)
print(res)

# 转换方法
# 1.将字符串的大写字母转换为小写字母
str0 = "aHello Good"
res = str0.lower()
print(res)

# 2. 小写字母转换大写字母
res = str0.upper()
print(res)

# 3. 第一个字母变为大写 其余变小写
res  = str0.capitalize()
print(res)

# 4. 每个单词首字母大写 其他的都小写【单词和单词之间空格隔开】
res = str0.title()
print(res)

# 字符串显示的格式
#1.在指定宽度的条件下 字符串居中显示
str0 = "good"
res = str0.center(20)
print(res)

# 填充其他位置
res = str0.center(20,"*")
print(res)

# 居左
res = str0.ljust(20,"*")
print(res)
# 居右
res = str0.rjust(20,"9")
print(res)

# 判断操作
#1.判断字符是否是以指定的内容开头
path = r'test.png'
res =  path.startswith("ste")
print(res)
# 2.判断字符是否是以指定的内容结尾
res = path.endswith("png")
print(res)

# 3.判断字符串是否是纯数字
str0 = "1013465746"
res = str0.isdigit()
print(res)

# 替换字符操作
str0 = "you are very beautiful a a"
res = str0.replace('a',"A")
print(res)

res = str0.replace('a',"A",2)
print(res)

# 拼接  用某个符号拼接
str0 = "abc1def1opq"
res = str0.split("1")
print(res)

value = "1".join(res)
print(value)

#将字符串转换为对应字节数据
"""    unicodey一种
utf-8   一个汉字占3个字节
gbk     一个汉字占2个字节
"""
str0 = "A"
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)
上一篇:Vasya and Good Sequences CodeForces - 1030E


下一篇:python中join()函数的使用方法