一、可变不可变类型

1、可变类型:值改变了,但是id没有改变,证明改变的是原值,是可变类型  

  2、不可变类型:值改变了id也改变了,证明产生新的值,是不可变类型

# a = 5
# print(id(a))
# a = 6
# print(id(a))#int  float  str   是不可变类型,list dict是可变类型

二、数字类型
1、整型int 用途:记录年龄、等级、数量定义方式:age =1 9 # age = int(19)

数据类型转换:只能将纯数字的字符串转化成int 常用操作+内置的方法

# x = int('123123')
# print(x, type(x))

2、浮点型float 用途:记录身高、薪资、体重 定义方式salary = 10.1 # salary=float(10.1)
数据类型转换: 只能将包含小数的字符串转成float

三、字符串类型

1、用途:记录描述性质的状态 定义方式:在单引号、双引号、三引号内包含一串字符串msg='hello' # msg=str('hello')

数据类型转换:所有类型都可以被str转成字符串类型 res=str([1,2,3])# print(res,type(res))

   2、常用操作+内置的方法

2.1按索引取值(正向取+反向取) :只能取 索引[0 1 2 -2 -1]

#msg='hello'
# print(msg[0],type(msg[0]))#h <class 'str'>
# print(msg[-1])#o
# print(msg[-2])#l

msg[0]='H' # 只能取,增值不允许
2.2 、切片(顾头不顾尾,步长)

# msg='hello world'
# res=msg[0:3:1] # 0 1 2
# print(res)            #hel
# print(msg)           #hello world

# msg='hello world'
# res=msg[-1:-12:-1]
# res=msg[-1::-1]
# res=msg[::-1]
# print(res)          #输出结果dlrow olleh

2.3、长度len

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

2.4 成员运算in和not in:判断一个子字符串是否存在于大字符串中

# msg='kevin is dsb'
# print('kevin' in msg)#True
# print('dsb' in msg)#True
# print('aaa' not in msg)#True
# print(not 'aaa' in msg)#True

2.5移除空白strip: 用来去除字符串左右两边的字符,不指定默认去除的是空格

# msg='   he  llo   '
# res=msg.strip()
# print(res,id(res))#he  llo 973595595304
# print(msg,id(msg))#   he  llo    973595616368
# name=input('username>>>: ').strip() # name='egon      '
# pwd=input('password>>>:    ' ).strip()#如果没有.strip()然后输入的是"123空格'则会报错
# if name == 'egon' and pwd == '123':
#     print('login successful')
# else:
#     print('输错了。。。')

2.6切分split:针对有规律的字符串,按照某种分隔符切成列表

# info='egon:18:male'
# res=info.split(':',1)
# print(res,type(res))#['egon', '18:male'] <class 'list'>  字符串看成一个值,切割之后变成两个值了所以变list
# print(res[0],res[1])#egon  18:male

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

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

2.7循环

# for i in 'hello':
#     print(i)#h e l l o
# print('******egon***********'.strip('*'))#egon
# print('******egon***********'.lstrip('*'))#egon***********
# print('******egon***********'.rstrip('*'))#******egon
# print('Abc123'.lower())#abc123
# print('Abc123'.upper())#ABC123
# msg='alex is dsb'
# print(msg.startswith('alex'))#True
# print(msg.endswith('b'))#True
# res = 'my name is %s my age is %s' % ('egon', 18)
# print(res)#my name is egon my age is 18
# res='my name is {name} my age is {age}'.format(age=18,name='egon')
# print(res)
# msg='a:b:c:d'
# print(msg.split(':',1))#['a', 'b:c:d']
# print(msg.rsplit(':',1))#['a:b:c', 'd']
# msg='kevin is kevin is hahahah'
# res=msg.replace('kevin','sb',1)
# print(res)

# print('123123'.isdigit())  # 如果字符串是由纯数字组成的,则返回True
# print('123123   '.isdigit())#其他均为False
# print('123123asdf'.isdigit())
# print('12312.3'.isdigit())
# score = input('>>>>: ').strip()  # score='ffhgafb'
# if score.isdigit():
#     score=int(score)
#     if score>=90:
#         print('优秀')
#     else:
#         print('小垃圾')
# else:
#     print('必须输入纯数字')

四、列表类型
用途:按照位置记录多个值,索引对应值 、定义方式:在[]内用逗号分隔开多个任意类型的值

l=['a',11,11.3,] # l=list(['a',11,11.3,])

数据类型转换:但凡能够被for循环遍历的数据类型都可以传给list,被其转换成列表

常用操作+内置的方法
#优先掌握的操作:

4.1 按索引存取值(正向存取+反向存取):即可存也可以取

# l=['a','b','c','d','e']
# print(l[0])#a
# print(l[-1])#e
# print(id(l))
# l[0]='A'
# print(id(l))

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

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

4.2切片(顾头不顾尾,步长)

# l=['a','b','c','d','e']
# print(l[1:4])#['b', 'c', 'd']
# print(l[::-1])#['e', 'd', 'c', 'b', 'a']

4.3 长度

# l=['a','b','c','d','e']
# print(len(l))#5

4.4 成员运算in和not in

# l=['a','b','c','d','e']
# print('a' in l)#True

4.5 追加与insert

 l=['a','b','c','d','e']
# l.append('xxx')
# l.append('yyy')
# print(l)#['a', 'b', 'c', 'd', 'e', 'xxx', 'yyy']
# l.insert(1,'xxxx')
# print(l)#['a', 'xxxx', 'b', 'c', 'd', 'e']

4.6 删除

# l = ['a', 'bbb', 'c', 'd', 'e']
# del l[0]
# print(l)## del是一种通用的删除操作,没有返回值
# dic={'k1':1}
# del dic['k1']
# print(dic)
# res = l.remove('bbb')
# print(l)#['a', 'c', 'd', 'e']
# print(res)#None,remove(指定要删除的那个元素),没有返回值
# l=['a','bbb','c','d','e']
# l.pop(-1)
# res=l.pop(1)
# print(l)#['a', 'c', 'd']
# print(res)#bbb  pop(指定要删除的那个元素的索引),返回刚刚删掉的那个元素

4.7循环

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

队列:先进先出

# l=[]
# # 入队
# l.append('first')
# l.append('second')
# l.append('third')
# print(l)#['first', 'second', 'third']
# 出队
# print(l.pop(0))#first  l=['second', 'third']
# print(l.pop(0))#second   l=['third']
# print(l.pop(0))#third

堆栈:后进先出

# l = ['aaa', 'bb', 345]
# l.clear()  # 此时l=[]
# l.append([1, 2, 3])  # 此时l=[[1, 2, 3]]
# 
# for i in [1, 2, 3]:  # i=1,2,3
#     l.append(i)
#     # print(l)#l=[[1, 2, 3], 1, 2, 3]
# l.extend([1,2,3])#l=[[1, 2, 3], 1, 2, 3, 1, 2, 3]
# l.reverse()
# print(l)#[3, 2, 1, 3, 2, 1, [1, 2, 3]]

只有在类中中所有元素都是同种类型的情况下才能用sort排序

长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号





    联系我们

    欢迎来到TinyMind。

    关于TinyMind的内容或商务合作、网站建议,举报不良信息等均可联系我们。

    TinyMind客服邮箱:support@tinymind.net.cn