首页 > 其他分享 >数据类型的内置方法及字符编码理论等

数据类型的内置方法及字符编码理论等

时间:2022-09-30 18:24:34浏览次数:40  
标签:编码 内置 jason 字符 数据类型 123 dict user print

目录

字典相关操作

  • 类型转换
dict() 字典的转换一般不使用关键字 而是自己动手转
  • 字典的操作方法
user_dict = {
    'username':'jason',
    'password':'123',
    'hobby': ['read', 'music', 'run']
}
# 1.按k取值(不推荐使用)
print(user_dict['username'])  # jason
print(user_dict['phone'])      # k不存在会直接报错
# 2.按内置方法get取值(推荐使用)
print(user_dict.get('username'))  # jason
print(user_dict.get('age'))       # None
print(user_dict.get('username','没有'))   # jason   键存在的情况下获取对应的值
print(user_dict.get('phone', '没有'))     # 没有   键不存在默认返回None 可以通过第二个参数自定义
#  3.修改值数据
print(id(user_dict))   # 2496773313344
user_dict['username'] = 'tony'
print(id(user_dict))  # 2496773313344
print(user_dict)      # {'username': 'tony', 'password': '123', 'hobby': ['read', 'music', 'run']}
# 4.新增键值对
user_dict['age'] = 18    # 键不存在则新增键值对
print(user_dict)         # {'username': 'jason', 'password': '123', 'hobby': ['read', 'music', 'run'], 'age': 18}
# 5.删除数据
del  user_dict['username']
print(user_dict)         # {'password': '123', 'hobby': ['read', 'music', 'run'], 'age': 18}
res = user_dict.pop('password')
print(user_dict)        # 'hobby': ['read', 'music', 'run'], 'age': 18}
print(res)             # 123
# 6.统计字典中键值对的个数
print(len(user_dict))  # 3
# 7.字典三剑客
print(user_dict.keys())   # dict_keys(['username', 'password', 'hobby'])  一次性获取字典所有的键
print(user_dict.values()) # dict_values(['jason', '123', ['read', 'music', 'run']])  一次性获取字典所有的值
print(user_dict.items())  # dict_items([('username', 'jason'), ('password', '123'), ('hobby', ['read', 'music', 'run'])]) 一次性获取字典的键值对数据

for i in user_dict.items():
    k, v = i
    print(k, v)
# 8. 补充说明
print(dict.fromkeys(['name', 'pwd', 'hobby'], 123))  # 快速生成值相同的字典 {'name': 123, 'pwd': 123, 'hobby': 123}
res = dict.fromkeys(['name', 'pwd', 'hobby'], [])
print(res)       # {'name': [], 'pwd': [], 'hobby': []}
res['name'].append('jason')
res['pwd'].append(123)
res['hobby'].append('study')
print(res)  # {'name': ['jason', 123, 'study'], 'pwd': ['jason', 123, 'study'], 'hobby': ['jason', 123, 'study']}
'''
当第二个公共值是可变类型的时候 一定要注意 通过任何一个键修改都会影响所有

'''
res = user_dict.setdefault('username', 'tony')
print(user_dict,res)

res = user_dict.setdefault('age', 123)
print(user_dict, res)

元组的相关操作

  • 类型转换
tuple()  ps:支持for循环的数据类型都可以转成元组
  • 元组的操作方法
t1 = (11, 22, 33, 44, 55, 66)
# 1.索引取值
# 2.切片操作
# 3.间隔、方向
# 4.统计元组内数据值的个数
print(len(t1))   # 6
# 5.统计元组内数据值出现的次数
print(t1.count(11))   # 1
# 6.统计元组内指定数据值的索引值
print(t1.index(22))   # 1
# 7.元组内如果只有一个数据值那么逗号不能少
# 8.元组内索引绑定的内存地址不能被修改(注意区分 可变与不可变)
# 9.元组不能新增或删除数据

集合相关操作

  • 类型转换
类型转换: set() 集合内数据必须是不可变类型(整型 浮点型 字符串 元组)
         集合内数据是无序的 没有索引的概念
  • 集合需要掌握的方法
    只有遇到去重和关系运算这两种需求的时候才应该考虑使用集合
去重  
s1 = {11, 22, 11, 22, 22, 11, 222, 11, 22, 33, 22}
l1 = [11, 22, 33, 22, 11, 22, 33, 22, 11, 22, 33, 22]
s1 = set(l1)
l1 = list(s1)
print(l1)
关系运算
&    共同的部分
-    独有的部分
|    全部的部分(和)
^    独有部分的和
群体之间做差异化校验
eg: 两个微信账户之间 有不同的好友 有相同的好友
f1 = {'jason', 'tony', 'jerry', 'oscar'}  # 用户1的好友列表
f2 = {'jack', 'jason', 'tom', 'tony'}  # 用户2的好友列表
# 1.求两个人的共同好友
print(f1 & f2)     # {'jason', 'tony'}
# 2.求用户1独有的好友
print(f1 - f2)  # {'jerry', 'oscar'}
# 3.求两个人所有的好友
print(f1 | f2)  # {'jason', 'jack', 'tom', 'tony', 'oscar', 'jerry'}
# 4.求两个人各自独有的好友
print(f1 ^ f2)  # {'oscar', 'tom', 'jack', 'jerry'}
# 5.父集 子集
print(f1 > f2)
 print(f1 < f2)

字符编码理论

1.字符编码只针对文本数据
2.计算机存储数据的本质是二进制,因为计算机只认识0和1,在和计算机交互的时候,用的是我们能够读懂的语言
字符编码的发展史:
  (1).一家独大
      计算机是美国人发明的,由于计算机值认识0和1,于是定义了字符编码,但是只记录了英文字符与数字之间的对应关系,于是有了ASCII码,内部只记录英文字符和数字之间的对应关系
  (2).群雄割据
       越来越多国家使用计算机之后,各个国家都开发了属于自己国家的字符编码
    中国:GBK编码,内部记录了中文字符,英文字符,和数字之间的对应关系,2bytes起步存储中文
    韩国:Euc_kr码,内部记录了韩文字符、英文字符与数字之间的对应关系。
    日本:shift_JTS码,内部记录了日文字符、英文字符与数字之间的对应关系。
 (3).万国码:unicode,兼容各个国家的字符。原有的字符全部使用2bytes起步存储。
UTF家族,是针对unicode的优化版本,常用的是utf-8。英文1bytes存储,其它统一3bytes存储字符。
内存使用的是Unicode,硬盘使用utf8。

字符编码实操

1.针对乱码不要慌 切换编码慢慢试即可
2.编码与解码
编码:将人类的字符按照指定的编码编码成计算机能够读懂的数据
        字符串.encode()
关键字:encode
解码:将计算机能够读懂的数据按照指定的编码解码成人能够读懂
        bytes类型数据.decode()
关键字:decode
3.python2与python3差异
python2默认的编码是ASCII:
		1.文件头
        	# encoding:utf8
    	        2.字符串前面加u
        	u'你好啊'
 	python3默认的编码是utf系列(unicode)

标签:编码,内置,jason,字符,数据类型,123,dict,user,print
From: https://www.cnblogs.com/wxlxl/p/16745258.html

相关文章

  • python数据类型·内置方法2
    今日内容概要字典相关操作元组相关操作集合相关操作字符编码(理论)字典相关操作1.类型转换 dict()字典的转换一般不使用关键字而是自己动手转2.字典必须......
  • 数据类型内置方法
    数据类型内置方法(二)数据类型内置方法之字典1.类型转换​ dict()​ 字典的转换一般不使用关键字,而是自己动手2.字典必须要掌握的操作user_dict={'username':'kiki'......
  • 数据类型内置,字符编码
    字典相关操作1.类型转换 dict() 字典的转换一般不使用关键字而是自己动手转2.字典必须要掌握的操作 user_dict={'username':'jason','password':123,......
  • oracle基本数据类型
    ORACLE基本数据类型:字符串类型、数字类型、日期类型、LOB类型类型作用NUMBERNUMBER(P,S)是最常见的数字类型。P是Precision的英文缩写,即精度缩写,表示有效数字的......
  • 数据类型的内置方法及字符编码理论
    字典相关操作1类型转换​ dict()​ 字段转换一般不使用关键字,而是自己编写代码进行转化2字典掌握的方法user={'name':'zhangsan','age':18,'like':......
  • 进入python的世界_day8_python基础——字典、元组、合集的内置方法、编码的介绍
    写在开头,昨天学了一些数据类型的内置使用方法,比如整形、浮点型、字符串、列表,今天学字典、元组、集合的常用内置方法,布尔值是没有所谓的内置方法的,还学了字符编码一、字......
  • python学习之数据内置
    今日分享字典相关操作元组相关操作集合相关操作字符编码(理论)字典相关操作1.类型转换 dict() 字典的转换一般不使用关键字而是靠自己手动转2.必须要学的......
  • 数据类型内置方法下 字典、元组、集合、字符编码理论
    +数据类型内置方法下字典、元组、集合、字符编码理论目录§一、字典的内置方法1、字典的类型转换dict()2、字典相关操作1.按key取值(不推荐使用)2.按内置方法get取值(推荐使......
  • 9月30日内容总结——数据类型内置方法剩余部分(字典、元组、集合)、字符编码的概念及使
    目录一、字典的内置方法1、类型转换(把其他类型转换成自己的类型)2、取值3、修改数据值4、增加数据值5、删除数据值1.del方法2.pop方法6、统计字典中键值对的个数7、字典三......
  • 字典,元组,集合的内置方法
    今日内容字典的相关操作内置方法1.类型转换 关键字dict() 字典使用转换太麻烦了,所以一般不推荐使用,建议手动转2.字典必须掌握的操作#这是按k取值不推荐 u......