3.22学习笔记

该博客介绍了Python的基础数据类型。首先区分了可变和不可变类型,接着阐述数字类型(整形、浮点型)为不可变类型。然后介绍字符串类型,包括定义、数据类型转换、常用操作及内置方法。最后说明了列表的定义方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.可变和不可变类型

1.可变类型:值改变,但是id不变,证明就是在改变原值,为可变类型。

x = 9
print(id(x))
x = 10
print(id(x))

在这里插入图片描述

2.不可变类型:值改变,但是id也跟着变,证明时产生了新的值,是不可变类型

l = ['a','b']
print(id(1))
l[0] ='A'
print(l)
print(id(l))

在这里插入图片描述

二.数字类型

1,整形int
定义
age = 10 # age=int(10)

2,浮点型float
salary = 10.1 # salary=float(10.1)

数字都是不可变类型。

三.字符串类型

在单引号,双引号,三引号内包含一串字符串。
msg=‘hello’ # msg=str(‘hello’)
数据类型转换:所有类型都可以被str转成字符串类型。
#res=str([1,2,3])
#print(res,type(res))
常用操作+内置的方法
优先掌握的操作:
1.按索引取值(正向取+反向取):只能取

msg = 'hello'
print(msg[0],type(msg[0]))
print(msg[-1])
print(msg[-2])

在这里插入图片描述
2.切片(顾头不顾尾,步长)

msg='helloworld'
res =msg[0:3:1]
print(res)
print(msg)

运行结果
切片的不同表示方法:

msg = 'hello world'
res = msg[-1:-12:-1]
res = msg[-1::-1]
res = msg[::-1]

3.长度len

msg = 'hello world'
print(len(msg))

在这里插入图片描述
4.成员运算in 和not in:判断一个字符串是否存在于大字符串中。

msg = 'kevin is dsb'
print('kevin' in msg)
print('dsb'in msg)
print('cvb'not in msg)
print(not 'cvb' in msg)

在这里插入图片描述
5.移除空白strip: 用来去除字符串左右两边的字符,不指定默认去除的是空格。

msg = '           h ello'
res = msg.strip()
print(res,id(res))
print(msg,id(msg))

在这里插入图片描述
6.切分split:针对有规律的字符串,按照某种分割符切成列表。

info = 'egon:18:male'
res = info.split(':')
print(res,type(res))
print(res[0],res[1])

在这里插入图片描述
cmd=‘get|a.txt|33333’
print(cmd.split(’|’,1)) #[‘get’, ‘a.txt|33333’]
print(cmd.split(’|’)) #[‘get’, ‘a.txt’, ‘33333’]

7.用:号作连接符号将纯字符串的列表拼接成一个字符串。

l=['egon','18','male']
res = l[0] + ':' + l[1] + ':' +l[2]
res = ':'.ioin(l)
print(res)

在这里插入图片描述
8.循环

for item in 'hello'
print('item')

#需要掌握的操作
1.strip,lstrip,rstrip

print('*****egon*******'.strip('*'))
print('*****egon*******'.lstrip('*'))
print('*****egon*******'.rstrip('*'))

在这里插入图片描述
2.lower,upper

print('Abc123'.lower())
print('Abc123'.lupper())

在这里插入图片描述
3.startwith,endswith

msg = 'alex is dsb'
print(msg.startwith('alex'))
print(msg.endswith('b'))

startwith判断是否以某个字符开头
endswith判断是否以某个字符结尾

4.format的三种用法

res = 'my name is %s my age is %s %('egon',18)'
print(res)
res = 'my name is {name} my age is {age}'.format(ag=18,name='egon')
print(res)

5,split,rsplit

msg = 'a:b:c:d'
print(msg.split(':',1))
print(msg.rsplit(':',1))

在这里插入图片描述
6.replace

msg= 'kevin is kiven is hahaha'
res = msg.replace('kevin','sb',1)
print(res)

在这里插入图片描述
7.isdigit
如果字符串由纯数字组成,则返回Ture.

print('123123'.isdight())
print('123123   '.isdight())
print('123123asdf'.isdight())
print('12312.3'.isdiht())

在这里插入图片描述
了解的操作

#1、find,rfind,index,rindex,count
# print('123 ke123ke'.find('ke'))
# print('123 ke123ke'.rfind('ke'))
# print('123 ke123ke'.index('ke'))
# print('123 ke123ke'.rindex('ke'))

# print('123 ke123ke'.find('xxxx'))
# print('123 ke123ke'.index('xxxx'))
# print('123 ke123ke'.count('ke',0,6))

#2、center,ljust,rjust,zfill
# print('egon'.center(50,'*'))
# print('egon'.ljust(50,'*'))
# print('egon'.rjust(50,'*'))

# print('egon'.rjust(50,'0'))
# print('egon'.zfill(50))

#3、captalize,swapcase,title
# print('abcdef dddddd'.capitalize())
# print('abcAef dddddd'.swapcase())
# print('abcAef dddddd'.title())

#4、is数字系列
num1=b'4' #bytes
num2='4' #unicode,python3中无需加u就是unicode
num3='四' #中文数字
num4='Ⅳ' #罗马数字

# bytes与阿拉伯数字组成的字符串
# print(num1.isdigit())
# print(num2.isdigit())
# print(num3.isdigit())
# print(num4.isdigit())

# 阿拉伯数字组成的字符串
# print(num2.isdecimal())
# print(num3.isdecimal())
# print(num4.isdecimal())

# 阿拉伯数字\中文\罗马组成的字符串
# print(num2.isnumeric())
# print(num3.isnumeric())
# print(num4.isnumeric())

#5、is其他

# ======================================该类型总结====================================
# 存一个值

# 有序

# 不可变
# msg='                  hello  '
# msg.strip()
# print(msg)

四.列表

定义方式:在[]内用逗号分隔开任意类型的值。

# 1、用途:按照位置记录多个值,索引对应值

# 2、定义方式:在[]内用逗号分隔开多个任意类型的值
# l=['a',11,11.3,] # l=list(['a',11,11.3,])

# 数据类型转换:但凡能够被for循环遍历的数据类型都可以传给list,被其转换成列表
# res=list('hello')
# res=list(123)
# print(res)

# res=list({'a':1,'b':2,'c':3}) # []
# print(res)

# 3、常用操作+内置的方法
#优先掌握的操作:
#3.1、按索引存取值(正向存取+反向存取):即可存也可以取
# l=['a','b','c','d','e']
# print(l[0])
# print(l[-1])
# print(id(l))
# l[0]='A'
# print(id(l))

# 强调强调强调!!!:对于不存在的索引会报错
# l[5]='AAAA'

# dic={"k1":111}
# dic['k2']=2222
# print(dic)

#3.2、切片(顾头不顾尾,步长)
# l=['a','b','c','d','e']
# print(l[1:4])
# print(l[::-1])

#3.3、长度
# l=['a','b','c','d','e']
# print(len(l))

#3.4、成员运算in和not in
# l=['a','b','c','d','e']
# print('a' in l)

#3.5、追加与insert
# l=['a','b','c','d','e']
# l.append('xxx')
# l.append('yyy')
# print(l)

# l.insert(0,'xxxx')
# print(l)

#3.6、删除
l=['a','bbb','c','d','e']

# del是一种通用的删除操作,没有返回值
# del l[0]
# print(l)

# dic={'k1':1}
# del dic['k1']
# print(dic)

# l.remove(指定要删除的那个元素),没有返回值
# res=l.remove('bbb')
# print(l)
# print(res)

# l.pop(指定要删除的那个元素的索引),返回刚刚删掉的那个元素
# l=['a','bbb','c','d','e']
# l.pop(-1)
# res=l.pop(1)
# print(l)
# print(res)

#3.7、循环
# l=['a','b','c','d','e']
# for item in l:
#     print(item)

# 练习:
# 队列:先进先出
# l=[]
# # 入队
# l.append('first')
# l.append('second')
# l.append('third')
# print(l)
# # 出队
# print(l.pop(0))
# print(l.pop(0))
# print(l.pop(0))

# 堆栈:后进先出

# 需要掌握的操作
l=['aaa','bb',345]
# l.clear()
# l.append([1,2,3])

# for i in [1,2,3]:
#     l.append(i)
# l.extend([1,2,3])

# l.reverse()

# 只有在类中中所有元素都是同种类型的情况下才能用sort排序
# l=[1,3,2]
# l.sort(reverse=True)

l=['z','d','a']
l.sort()
print(l)



# 存多个值

# 有序

# 可变

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值