数据类型,字符编码,文件处理
Posted kp1995
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据类型,字符编码,文件处理相关的知识,希望对你有一定的参考价值。
1.数据类型:
数字(整型,长整型,浮点型,复数)
字符串:在介绍字符编码时介绍字节bytes类型
列表
元祖
字典
集合
2.整型 int
作用:年级/等级/身份证号等整型数字相关
定义: age=10 本质上age=int(10)
十进制转成。。。进制 print(bin(13)) #将整型转变成二进制 print(oct(13)) #将整型转变成八进制 print(hex(13)) #将整型转变成十六进制
常用操作+内置方法
# 存一个值 # 不可变 # x=10 # print(id(x)) # x=11 # print(id(x))
3. 浮点型 float
作用:薪资/身高/体重等浮点数相关
salary=3000.3 #本质salary=float(3000.3)
类型转换
print(float(10)) print(float(1.1)) print(float(‘1.1‘))
4.字符串类型 str
作用:记录描述性值的状态,比如名字/性别等
msg=‘hello world‘ #msg=str(‘hello world‘)
类型转换:可以把任意类型转成字符串类型
res1=str(10) res2=str(10.3) res3=str([1,2,3]) res4=str({‘x‘:1}) #res4="{‘x‘:1}"
*****常用操作+内置的方法
1.按索引取值(正向取+反向取):只能取
msg=‘hello world‘ print(type(msg[0])) print(msg[-1]) msg[0]=‘H‘
2.切片(顾头不顾尾,步长)
msg=‘hello world‘ print(msg[0]+msg[1]+msg[2]) print(msg[0:5]) print(msg[0:5:2]) print(msg[0:]) print(msg[:]) print(msg[-1:-5:-1]) #-1 -2 -3 -4 print(msg[::-1]) #-1 -2 -3 -4
3.长度 len :统计的是字符的个数
4.成员运算 in 和 not in : 判断一个子字符是否存在于一个大字符串中
# msg=‘hello world‘ # print(‘ho‘ in msg) # print(‘ho‘ not in msg)
5.移除空白 strip : 移除字符串左右两边的某些字符
msg=‘ hello ‘ print(msg.strip(‘ ‘)) print(msg.strip()) print(msg) name=input(‘name>>>: ‘).strip() #name=‘egon‘ pwd=input(‘password>>>: ‘).strip() if name == ‘egon‘ and pwd == ‘123‘: print(‘login successfull‘) else: print(‘username or password error‘) msg=‘***h**ello**********‘ print(msg.strip(‘*‘)) msg=‘*-=+h/ello*(_+__‘ print(msg.strip(‘*-=+/(_‘))
6.切分 split :把有规律的字符串切成列表从而方便取值
info=‘egon:18:180:150‘ res=info.split(‘:‘,1) print(res) print(res[1]) info=‘egon:18:180:150‘ res=info.split(‘:‘) print(res) s1=res[0]+‘:‘+res[1]+‘:‘+res[2]+‘:‘+res[3] s1=‘‘ for item in res: s1+=item print(s1) s1=‘:‘.join(res) print(s1) ‘:‘.join([1,2,3,4,5])
7.循环
for i in ‘hello‘: print(i)
****需要掌握的操作
1.strip , lstrip , rstrip
msg=‘*****hello****‘ print(msg.strip(‘*‘)) print(msg.lstrip(‘*‘)) print(msg.rstrip(‘*‘))
2.lower , upper
msg=‘AaBbCc123123123‘ print(msg.lower()) print(msg.upper()) #执行之后 #aabbcc123123123 #AABBCC123123123
3. startswith , endswith
msg=‘alex is dsb‘ print(msg.startswith(‘alex‘)) print(msg.endswith(‘sb‘)) #执行之后 #True #True
4.format 的三种玩法
msg=‘my name is %s my age is %s‘ %(‘egon‘,18) print(msg) #执行之后 #my name is egon my age is 18
msg=‘my name is {name} my age is {age}‘.format(age=18,name=‘egon‘) print(msg) #执行之后 #my name is egon my age is 18
msg=‘my name is {} my age is {}‘.format(18,‘egon‘) msg=‘my name is {0}{0} my age is {1}{1}{1}‘.format(18,‘egon‘) print(msg) #执行之后 #my name is 1818 my age is egonegonegon
5.split , rsplit
cmd=‘get|a.txt|33333‘ print(cmd.split(‘|‘,1)) print(cmd.rsplit(‘|‘,1)) #执行之后 #[‘get‘, ‘a.txt|33333‘] #[‘get|a.txt‘, ‘33333‘]
6. replace
msg=‘kevin is sb kevin kevin‘ print(msg.replace(‘kevin‘,‘sb‘,2)) #sb is sb sb kevin
7. isdigit (当字符串内为纯数字时结果为True
res=‘11111‘ print(res.isdigit()) int(res) #True
age_of_bk=18 inp_age=input(‘your age: ‘).strip() if inp_age.isdigit(): inp_age=int(inp_age) #int(‘asdfasdfadfasdf‘) if inp_age > 18: print(‘too big‘) elif inp_age < 18: print(‘to small‘) else: print(‘you got it‘) else: print(‘必须输入纯数字‘)
** (了解)
1.find, rfind, index, rindex, count
find 和 index用法差不多,find比index功能强大,优先使用find
print(‘xxxkevin is sb kevin‘.find(‘kevin‘)) print(‘xxxkevin is sb kevin‘.index(‘kevin‘)) print(‘xxxkevin is sb kevin‘.rfind(‘kevin‘)) print(‘xxxkevin is sb kevin‘.rindex(‘kevin‘)) #执行之后 3 3 15 15
print(‘kevin is kevin is kevin is sb‘.count(‘kevin‘)) #执行之后 # 3
2. center, ljust ,rjust , zfill
print(‘egon‘.center(50,‘*‘)) print(‘egon‘.ljust(50,‘*‘)) print(‘egon‘.rjust(50,‘*‘)) print(‘egon‘.zfill(50)) #执行之后 ***********************egon*********************** egon********************************************** **********************************************egon 0000000000000000000000000000000000000000000000egon
3. captalize , swapcase , title
print(‘my name is kevin‘.capitalize()) print(‘AaBbCc‘.swapcase()) print(‘my name is kevin‘.title()) #执行之后 My name is kevin aAbBcC My Name Is Kevin
4.is其他
name=‘egon123‘ print(name.isalnum()) #字符串由字母或数字组成 print(name.isalpha()) #字符串只由字母组成 print(name.islower()) print(name.isupper()) name=‘ ‘ print(name.isspace()) msg=‘I Am Egon‘ print(msg.istitle()) #执行之后 True False True False True True
以上是关于数据类型,字符编码,文件处理的主要内容,如果未能解决你的问题,请参考以下文章