编码转化

news/2024/7/5 11:37:35
id查询内存地址。
name = 'alex'
print(id(name))
name1 = 'alex'
name2 = 'alex'
print(name1==name2)
'='赋值运算   ‘==’比较数值相同
is  内存地址是否相同
小数据池。int  str 在一定范围内,如果两个数值相同,为了节省内存,共用一个内存地址。
int:  -5~256
str:1只包含数字或者字母元素,有非字母元素就不是小数据池。
      2.单个字母* int(<21)存在小数据池。
剩下的类型都不存在
1.不同的密码本之间的二进制是不能互相识别的,容易报错或者产生乱码。
2.计算机的文件存储和传输都是0101010(gbk,utf-8,ascii.gb2312等)不能是unicode.
大前提:python3x,编码。
   数据类型:
            int
             str
             bytes:str拥有的所有方法,bytes都有。
             bool       
             list
              tuple
              dict
              set
python3x   内存中的编码方式是unicode
         英文:
              str:表现形式  name = "alex"
                   内部编码:unicode
               bytes:表现形式:name1 = b"alex"
                        内部编码:非unicode
       中文:
             str:表现形式   name = "中国“
                   内部编码:unicode
              bytes:表现形式:b'\xe4\xb8\xad\xe5\x9b\xbd'
                        内部编码:非unicode 
bytes与str如何转化
str-------->bytes
         b1=str.encode('utf-8')
bytes------->str
           s1=bytes.decode('utf-8')   
str ---> bytes
s1 = '中国'
b1 = s1.encode('utf-8')  # encode 编码
# b2 = s1.encode('gbk')
# print(b1)
# print(b2)
s2 = b1.decode('utf-8') # decode 解码
print(s2)
utf-8 bytes  ---> gbk bytes
s1 = b"alex"
print(s1.capitalize())          
python3为什么存在bytes类型?(默写)
文件的下载与传输都是str类型,str的编码方式是unicode,bytes的编码方式是utf-8,机器识别不了unicode,而bytes又是类似于str的类型,
所以str先转化成bytes类型,在进行文件的传输与下载。



转载于:https://www.cnblogs.com/ls13691357174/p/9095863.html


http://www.niftyadmin.cn/n/4557803.html

相关文章

Leetcode - 两数相加 M[2]

问题描述 给你两个 非空 的链表&#xff0c;表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的&#xff0c;并且每个节点只能存储 一位 数字。 请你将两个数相加&#xff0c;并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外&#xff0c;这两个数都不…

Leetcode - 合并两个有序数组 E[88]

问题描述 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2&#xff0c;另有两个整数 m 和 n &#xff0c;分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中&#xff0c;使合并后的数组同样按 非递减顺序 排列。注意&#xff1a;最终&#xff0c;合并…

Leetcode - 二进制求和 E[67]

题目描述 给你两个二进制字符串&#xff0c;返回它们的和&#xff08;用二进制表示&#xff09;。 输入为 非空 字符串且只包含数字 1 和 0。示例 1:输入: a "11", b "1"输出: "100" 示例 2: 输入: a "1010", b "1011" …

抽象类的继承

接口中有定义的方法 具体方法功能代码可以不写&#xff09;如果是继承接口 也要把方法名照写上 即使不知道具体干某些事情 具体干某些事情 就必须对抽象类中的每个方法都进行实现(换种说法就是具体化 abstract class cWeapon{ int damage; abstract int setDamage(); abstract …

Leetcode - 无重复字符的最长字串 M[3]

问题描述 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc"&#xff0c;所以其长度为 3。 示例 2:输入: s "bbbbb"输出: 1解释: 因为无…

asp.netmvc 三层搭建一个完整的项目

接下来用 asp.net mvc 三层搭建一个完整的项目&#xff1a; 架构图: 使用的数据库: 一张公司的员工信息表&#xff0c;测试数据 解决方案项目设计&#xff1a; 1.新建一个空白解决方案名称为Company 2.在该解决方案下,新建解决方案文件夹(UI,BLL,DAL,Model) 当然还可以加上comm…

eclipse 编的java程序运行后显示问号

在Resource中把编码改成GBK或者是GB2312 ||| 改为GB2312 或者 GBK 就不会了 选中properties属性 你右键单击该类 在右边选择GBk 答案补充 直接输入GBK就行了 答案补充 选择下面的others ||| 在我这里都没错啊 然后找到resource 选择Properties 然后找到你的文件点击右键 在reso…

Leetcode - 杨辉三角II E[119]

问题描述 给定一个非负索引 rowIndex&#xff0c;返回「杨辉三角」的第 rowIndex 行。 在「杨辉三角」中&#xff0c;每个数是它左上方和右上方的数的和。 示例 1:输入: rowIndex 3输出: [1,3,3,1] 示例 2:输入: rowIndex 0输出: [1] 示例 3:输入: rowIndex 1输出: [1,1] 提…