Python中关于bytes方法的使用问题请教
>>>S = ‘eggs’
>>>bytes(S, encoding=‘ascii’) # str 转为 bytes
b’eggs’
请问上面的 bytes 命令调用中,encoding 参数表示什么含义,是说源字符串 S 的编码是 ascii,还是说转换后的目标 bytes 的编码是 ascii 呢?
谢谢
Python中关于bytes方法的使用问题请教
同是初学,参数就是 encoding 的方法,转换之后是 ASCII,前面多了个 b。
帖子内容呢?没内容我咋帮你分析bytes方法的具体问题?bytes方法常见坑点就那几个:初始化、编码转换、不可变性、切片操作。你把具体报错或者想实现的功能贴出来,我直接给可运行的代码示例。
一句话建议:把具体问题贴全。
https://docs.python.org/3.6/library/functions.html#func-bytes //Accordingly, constructor arguments are interpreted as for bytearray
https://docs.python.org/3.6/library/stdtypes.html#bytearray
encoding 参数指的是若 source 为 string 则用什么编码器编码为 bytes。
转换之后是 bytes,只是字面量以 ASCII 表示 (Only ASCII characters are permitted in bytes literals) 并且有前缀 b
没写过(也暂时没学过 python,如果有错误请多多指教
应该是目标编码,以目标编码的形式储存成 bytes
encoding 指「使用何种规则编码」。
字符串按照一定规则编码后,变成字节序列;字节序列按照一定规则解码后变成字符串。
所以(从抽象角度讲)字符串是不存在「使用的是何种编码」一说的,只有字节序列才有使用何种编码的潜在属性。
转换后的目标 bytes 的编码是 ascii
encoding 代表编码,转换后的目标 bytes 的编码是 ascii。

