ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python基础知识(七)---数据类型补充、"雷区"、编码

2019-06-12 14:02:58  阅读:219  来源: 互联网

标签:python list s1 数据类型 li s2 print 雷区 ###


数据类型补充、"雷区"、编码

1.数据类型补充

str:
#字符串数据类型补充

s1=str(123)    #常用于类型转换
print(s1)


#capitalize()首字母大写
 s='abc'
 s1=s.capitalize()
 print(s1)
    
#title() 每个单词首字母大写,  需要被隔开
 s2=s.title()
 print(s2)


#count()  统计某个字符串出现的次数
 s3=s.count('s')
 print(s3)


#大小写转换
 s4=s.swapcase()
 print(s4)


#查找
 s='alex taibai'
 s1=s.find('a')  # 从左往右找, 只找到第一个.  查找不到的时候返回 -1
 s2=s.index('a')  # 查找不到用 ,报错
 print(s1,s2)


#center ()  字符居中,长度20其他位置以*为填充
 s1=s.center(20,'*')
 print(s1)
list:
#列表数据类型补充
 li=list('123231122114') # 生成列表 ,常用语类型转换
 print(li)


#统计
 print(li.count('1'))

    
#反转
 li.reverse() # 对列表容器操作
 print(li) # 打印列表容器 


#排序
 li.sort() #升序
 print(li)
 li.sort(reverse=True) #降序
 print(li)
tuple:
# tu=tuple('1234123') # 定义元组 , 常用于数据转换

#统计
 a=tu.count('1')
 print(a)


#查找
 print(tu.index('1'))
dict:
#dict
 dic=dict(k=1,k1=2,k2=3) # 一种定义方式
 print(dic)

#随机删除
 dic1={'k1':'1','k2':'2','k3':'41'}
 dic1.popitem() #在python3.6版本 ,默认删除最后一个键值对
 print(dic1)

#批量创建字典,fromkeys第一个参数是可迭代对象, 第二个参数是value
#fromkeys 是一个类方法,dict直接调用,生成一个新的字典
 dic2=dict.fromkeys('123',[1]) 
 dic2['1'][0]=2 # 此处有深浅拷贝的知识
 print(dic2)
set:
#集合
 s=set('1234')  # 常用语类型转换
 print(s)
数据类型转换:
#数据类型转换

###str  ---> int
s='123'
a=int(s)#必须是数字

###str--->list
li=list(s)
print(li)

s='abc'
print(s.split())

###list-->str
li=['123']
s="".join(li)   # join 不能有数字
print(s)

###list ->tuple
li=[1,2,3]
tu=tuple(li)
print(tu)

###tuple--->list
tu = (1,2,3)
li = list(tu)
print(li)

###set-->list
s={1,2,3,4}
print(list(s))

###list-->set
li=[1,2,3]
s=set(li)
print(s)

###数据类型转换总结

  1. str -->数字 必须是数字
  2. 数字 --->字符串 ,没要求
  3. 列表转成字符串 ,join-->可迭代的对象中不能出现数字
  4. 字符串转成列表 split
  5. 除字典外 ,容器都数据类型可互相转换

#访问方式:

​ 直接访问: int ,bool,set

​ 顺序访问: list ,tuple,str

​ 通过key dict

2.以后会遇见的坑

删除列表的时候
字典for的时候怎么删除键值对
面试题

3.编码的进阶

编码 (encode) 解码(decode) 转换成byte字节格式

​ python3内存中使用的是Unicode编码

​ python2内存使用的ASCII

#gbk编码  gbk解码  #中文2个字节
s='今天是个好日子'
s1=s.encode('gbk')
print(s1)
s2=s1.decode('gbk')
print(s2)

#结果

标签:python,list,s1,数据类型,li,s2,print,雷区,###
来源: https://www.cnblogs.com/dengl/p/11009220.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有