数字类型
字符类型及内置方法
列表类型及内置方法
""" #======================================基本使用====================================== #1、用途 #2、定义方式 #3、常用操作+内置的方法 #======================================该类型总结==================================== #存一个值or存多个值 #有序or无序(有序:但凡有索引的数据都是有序的) #可变or不可变( 1、可变:值变,id不变。可变==不可hash 2、不可变:值变,id就变。不可变==可hash ) """ #二:该类型总结 """ 可变类型:值改变的情况下,id不变 不可变类型:值改变的情况下,id也跟着改变 """ #一:基本使用:int # 1 用途:记录年龄、等级、号码 # 2 定义方式 age=18 #age=int(18) print(type(age)) int('abadf') #报错 int('10.1') #报错 int('101') #int只能将字符串中包含纯数字转成整型 # 十进制转成其他进制 print(bin(12)) print(oct(12)) #12 =>1*(8**1) + 2*(8**0) print(hex(16)) # 进制转换(了解**) # 其他进制转成十进制 print(int(10,2)) print(int(10,8)) print(int(10,16)) # 3 常用操作+内置的方法
#1、按索引取值(正向取+反向取) :只能取 #2、切片(顾头不顾尾,步长) # 了解负数取值 #3、长度len #4、成员运算in和not in: 判断一个子字符串是否存在于一个大的字符串中 #5、去掉字符串左右两边的字符strip,不管中间的 #6、切分split:针对按照某种分隔符组织的字符串,可以用split将其切分成列表,进而进行取值 #7、循环 #方法 #1、strip,lstrip,rstrip #2、lower,upper #3、startswith,endswith #4、format的三种玩法 #5、split,rsplit #6、join #7、replace #8、isdigit # 判断字符串中包含的是否为纯数字 # 需要了解的内置方法 #1、find,rfind,index,rindex,count #2、center,ljust,rjust,zfill #3、expandtabs #4、captalize,swapcase,title #5、is数字系列
#一:基本使用 # 1 用途:记录描述性的状态,比如人的名字、地址、性别 # 2 定义方式:在"",'',""""""内包含一系列的字符 msg='hello' #msg=str('hello') res1=str(1) res2=str([1,2,3]) print(type(res1),type(res2)) info="'xxx'" # 3 常用操作+内置的方法 #1、按索引取值(正向取+反向取) :只能取 msg='hello world' print(msg[4]) print(msg[-1]) msg[3]='A' # 报错 # 2、切片(顾头不顾尾,步长) msg='hello world' # 就是从一个大的字符串中切分出一个全新的子字符串 print(msg[0:5]) print(msg) # 没有改变原值 print(msg[0:5:1]) print(msg[0:5]) print(msg[0:5:2]) #hlo # 了解: print(msg[0:5:1]) msg='hello world' print(msg[5:0:-1]) print(msg[5::-1]) print(msg[-1::-1]) print(msg[::-1]) #3、长度len msg='hello world' print(len(msg)) #4、成员运算in和not in: 判断一个子字符串是否存在于一个大的字符串中 print('alex' in 'alex is dsb') print('dsb' in 'alex is dsb') print('sb' in 'alex is dsb') print('xxx' not in 'alex is dsb') # 推荐 print(not 'xxx' in 'alex is dsb') #5、去掉字符串左右两边的字符strip,不管中间的 user=' egon ' user=' x egon ' user="*******egon********" user=" **+* */***egon* **-*****" print(user.strip("* +/-")) user=input('>>>: ').strip() if user == "egon": print('用户名正确') #6、切分split:针对按照某种分隔符组织的字符串,可以用split将其切分成列表,进而进行取值 msg="root:123456:0:0::/root:/bin/bash" res=msg.split(':') print(res[1]) cmd='dowload|a.txt|3333333' cmd_name,filename,filesize=cmd.split('|') #7、循环 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='aABBBBb' res=msg.lower() print(res) print(msg) #3、startswith,endswith msg='alex is dsb' print(msg.startswith('alex')) print(msg.endswith('sb')) print(msg.endswith('b')) #4、format的三种玩法 print('my name is %s my age is %s' %('egon',18)) print('my name is {name} my age is {age}'.format(age=18,name='egon')) # 了解 print('my name is {} my age is {}'.format(18,'egon')) print('my name is {0} my age is {1}{1}'.format(18,'egon')) #5、split,rsplit msg='get|a.txt|333331231' print(msg.split('|',1)) print(msg.rsplit('|',1)) #6、join msg='get|a.txt|333331231' l=msg.split('|') print(l) src_msg='|'.join(l) print(src_msg) #7、replace msg='alex say i have one tesla,alex is alex hahaha' print(msg.replace('alex','sb',1)) print(msg) #8、isdigit # 判断字符串中包含的是否为纯数字 print('10.1'.isdigit()) age=input('>>: ').strip() if age.isdigit(): age=int(age) #int('asfdsadfsd') if age > 30: print('too big') elif age < 30: print('too small') else: print('you got it') else: print('必须输入数字') # 需要了解的内置方法 #1、find,rfind,index,rindex,count msg='hello alex is sb' print(msg.find('alex')) print(msg.find('alex',0,3)) print(msg.index('alex')) print(msg.index('alex',0,3)) msg='alex aaa alex' print(msg.find('alex')) print(msg.rfind('alex')) msg='alex aaa alex' print(msg.count('alex')) # 统计一个子字符串在大字符串中出现的次数 #2、center,ljust,rjust,zfill print('egon'.center(50,'*')) print('egon'.ljust(50,'*')) print('egon'.rjust(50,'*')) print('egon'.zfill(50) #3、expandtabs print('a\tb'.expandtabs(1)) #4、captalize,swapcase,title print('hello'.capitalize()) print('hElLo'.swapcase()) print('egon is nb'.title()) #5、is数字系列 #在python3中 num1=b'4' #bytes num2=u'4' #unicode,python3中无需加u就是unicode num3='壹' #中文数字 num4='Ⅳ' #罗马数字 ''.isnumeric(): unicode,中文数字,罗马数字 print(num2.isnumeric()) print(num3.isnumeric()) print(num4.isnumeric()) ''.isdecimal(): unicode print(num2.isdecimal()) print(num3.isdecimal()) print(num4.isdecimal()) # ''.isdigit() :bytes,unicode print(num1.isdigit()) print(num2.isdigit()) print(num3.isdigit()) print(num4.isdigit()) #6、is其他 print('abc你'.isalpha()) # 字符串中包含的是字母或者中文字符 # 字符串中包含的是字母(中文字符)或数字 print('ab'.isalnum()) print('123123'.isalnum()) print('ab123'.isalnum()) #二:该类型总结 # 1 存一个值 # 2 有序 # 3 不可变
#一:基本使用 # 1 用途:存放多个值,可以根据索引存取值 # 2 定义方式:在[]内用逗号分割开多个任意类型的值 l=['egon','lxx','yxx'] # l=list(['egon','lxx','yxx']) l1=list('hello') #list就相当于调用了一个for循环依次取出'hello'的值放入列表 print(l1) l2=list({'x':1,'y':2,'z':3}) print(l2) list(10000) # 报错 # 3 常用操作+内置的方法 #1、按索引存取值(正向存取+反向存取):即可存也可以取 l=['egon','lxx','yxx'] print(l[0]) l[0]='EGON' print(l) print(l[-1]) print(l[3]) l[0]='EGON' # 只能根据已经存在的索引去改值 l[3]='xxxxxxxx' #如果索引不存在直接报错 #2、切片(顾头不顾尾,步长) l=['egon','lxx','yxx',444,555,66666] print(l[0:5]) print(l[0:5:2]) print(l[::-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) print(444 in l) #5、追加 l=['egon','lxx','yxx'] l.append(44444) l.append(55555) print(l) #6、往指定索引前插入值 l=['egon','lxx','yxx'] l.insert(0,11111) print(l) l.insert(2,2222222) print(l) # 一次性添加多个元素 l = ['jason','nick'] l.extend(['tank','sean']) #7、删除 l=['egon','lxx','yxx'] # 单纯的删除值: # 方式1: del l[1] # 通用的 print(l) # 方式2: res=l.remove('lxx') # 指定要删除的值,返回是None print(l,res) # 从列表中拿走一个值 res=l.pop(-1) # 按照索引删除值(默认是从末尾删除),返回删除的那个值 print(l,res) #8、循环 l=['egon','lxx','yxx'] for item in l: print(item) # 需要掌握的操作 l=['egon','egon','lxx','yxx',444,555,66666] print(l.count('egon')) print(l.index('egon')) print(l.index('yxx',0,1)) l.clear() items=['a','b','c'] items='hello' for item in items: l.append(item) l.extend(items) print(l) l=['egon','egon','lxx','yxx',444,555,66666] l.reverse() print(l) nums=[3,-1,9,8,11] nums.sort(reverse=True) print(nums)items=[1,'a','b',2items.sort() #二:该类型总结 # 1 存多个值 # # 2 有序 # # 3 可变 l=['a','b','c'] print(id(l)) l.append('d') print(id(l)) # 队列:先进先出 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=[] # 入栈 l.append('first') l.append('second') l.append('third') print(l) # 出栈 print(l.pop()) print(l.pop()) print(l.pop())