数字类型、字符类型、列表类型

一.数字类型

1.该类型总结

★可变类型:值改变的情况下,id不变    (不可hash)

★不可变类型:值改变的情况下,id也跟着改变  (可hash)

使用:int

用途:记录年龄、号码
定义方式:age = 18  # age = int(18)  int只能将字符串中包含纯数字转换整形
print(type(age))
#十进制转化为其他进制
print(bin(11))
print(oct(11))
print(hex(11))
#将其他进制转化为十进制
print(int('10',2))
print(int('10',8))
print(int('10',16))

2.字符串类型

常用操作

1按索引取值(正向取,反向取):只能取
msg = 'hello world'
print(msg[4])
print(msg[-1])
2.切片
msg = 'hello world'
print(msg[1:9:2])
3.长度 len
msg = 'hello world'
print(len(msg))
4.成员运算in 和not in: 判断一个字符串是否存在于一个大的字符串
print('alex' in 'alex is dsb')
print('xxx' not in 'alex is dsb')
5.循环
msg = 'hello'
for item in msg:
    print(item)

内置方法

#1、strip,lstrip,rstrip
print('*******egon******'.lstrip('*'))  # 去掉字符串中左边字符
print('*******egon******'.rstrip('*'))  # 去掉字符窜右边字符
print('*******egon******'.strip('*'))  # 去掉字符串左右两边字符
#2、lower,upper
msg = 'KFHhhHLKhljklH'
reg = msg.lower()  # 全部转化为小写 
print(reg)
reg = msg.upper()  # 全部转化为大写
print(reg)
#3、startswith,endswith
msg = 'alex is dsb'
print(msg.startswith('alex'))  # 查看msg中的前端是否有alex  返回的是True或False
print(msg.endswith('sb'))      # 查看msg中的后端是否有sb
#4、format的三种玩法
print('my name is %s my age is %s' %('hui',18))
print('my name is {} my age is {}'.format('hui',18))
print('my name is {0} my age is {0}'.format('hui',18))
print('my name is {name} my age is {age}'.format(age = 18,name = 'hui'))  # ★通过变量名取值
#5、split,rsplit
msg = 'get|a.txt|423333333435'
print(msg.split('|',1))  # 从左边分割,1代表分割次数  分割后是一个列表
print(msg.rsplit('|',1))  # 从右边分割
#6、join
msg = 'get|a.txt|423333333435'
l = msg.split('|')
print(l)
scr_msg = '|'.join(l)  # 将列表中元素通过|连接起来
print(scr_msg)
# replace
msg='alex say i have one tesla,alex is alex hahaha'
print(msg.replace('alex','sb',2))  # 后面的字符串代替前面的字符串 数字是替代次数
print(msg)
# 8.isdight # 判断字符串中包含的是否是纯数字
print('10.2'.isdigit())

需要了解的内置方法

#1、find,rfind,index,rindex,count
msg='hello alex is sb'
print(msg.find('alex'))  # 返回的是第一个字符的索引位置
print(msg.find('alex',0,3))  # 后面的数字表示的是查找的索引范围,如果没找到返回-1
# 用法和find一样,唯一不同的在于当找不到值时,会报错
print(msg.index('alex'))
print(msg.index('alex',0,3))

msg='alex aaa alex'
print(msg.count('alex')) # 统计一个子字符串在大字符串中出现的次数
#2、center,ljust,rjust,zfill
print('egon'.center(50,'*'))  # 将egon放入中间,在两边填充*
print('egon'.ljust(50,'*'))  # 将egon放入左边,在右侧填充*
print('egon'.rjust(50,'*'))  # 将egon 放入右边,在左侧填充*
print('egon'.zfill(50,))  # 将egon放入右边,在左侧补零
#4、captalize,swapcase,title
print'hello'.captalize())  #将字符串中的第一个单词首字母大写
print('hello'.swapcase())  # 将字符串中的字符大小写取相反
print('hello'.title())  # 将字符串中被空格隔开的子字符串的第一个字符大写

该类型总结

1.存一个值

2.有序

3.不可变

三.列表结构

基本使用

★用途:存放多个值,可以根据索引取值

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

常用操作

#1、按索引存取值(正向存取+反向存取):即可存也可以取
l=['egon','lxx','yxx']
print(l[0])
l[0]='EGON' # 只能根据已经存在的索引去改值
#2、切片(顾头不顾尾,步长)
l=['egon','lxx','yxx',444,555,66666]
print(l[0:5])  # 0和5代表的是值得的位置
print(l[0:5:2])  #2代表步长
print(l[::-1])  # -1代表反向取
#3、长度
l=['egon','lxx','yxx',444,555,66666,[1,2,3]]
print(len(l))
#4、成员运算in和not in
l=['egon','lxx','yxx',444,555,66666,[1,2,3]]
print('lxx' in l)
#5 循环
l=['egon','lxx','yxx'] for item in l: print(item)

内置方法

#1、在列表中增加值
l = ['egon','lxx','jf']
l.append(32)  # 在尾部追加,当做一个值进行添加
print(l)
# 往指定索引前插入值
l=['egon','lxx','yxx']
l.insert(1,11)  # 1代表插入得位置,11是插入得值,插入的值当做一个值添加
print(l)

# 一次性添加多个元素
l=['egon','lxx','yxx']
l.extend([1,4758]),类似于for循环,将里面的元素一个一个的添加进去。for+append()
print(l)
#2、删除
l=['egon','lxx','yxx']
del l[1] # 通用的 ,单纯的删除值
print(l)

res=l.remove('lxx') # 指定要删除的值,返回是None
print(l,res)

res=l.pop(-1) # 按照索引删除值(默认是从末尾删除),返回删除的那个值
print(l,res)

l.clear() # 清空l中的所有值
# 需要掌握的操作
l=['egon','egon','lxx','yxx',444,555,66666]
print(l.count('egon'))  # 返回列表中egon的个数
print(l.index('egon'))  # 在列表中找到字符串egon的索引
print(l.index('yxx',0,6))  # 在索引0—6之间寻找yxx,返回索引位置,否则报错 
dayehui
原文地址:https://www.cnblogs.com/zrh-960906/p/11128381.html