返回顶部
首页 > 资讯 > 后端开发 > Python >Python3 上 bytes 和 s
  • 721
分享到

Python3 上 bytes 和 s

bytes 2023-01-31 08:01:52 721人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

最近学 python,在 coursera 上上 Programming for Everybody (Getting Started with Python) 这门课,就顺藤摸瓜地读了 python for infORMatics 这本

最近学 python,在 coursera 上上 Programming for Everybody (Getting Started with Python) 这门课,就顺藤摸瓜地读了 python for infORMatics 这本书。书上用的 Python2 ,电脑装的3,有些地方不一样。例如 str 的 translate 方法在删除特定字符时死活不对。

调出help查了一下。

>>> help(str.translate)
Help on method_descriptor:

translate(...)
    S.translate(table) -> str
    
    Return a copy of the string S in which each character has been mapped
    through the given translation table. The table must implement
    lookup/indexing via __getitem__, for instance a dictionary or list,
    mapping Unicode ordinals to Unicode ordinals, strings, or None. If
    this operation raises LookupError, the character is left untouched.
    Characters mapped to None are deleted.

没有 deletechars 参数,难怪会有报错
TypeError - Translate takes one argument.(2 given)
而另一个数据类型bytes是有的。

>>> help(bytes.translate)
Help on method_descriptor:

translate(...)
    translate(table, [deletechars])
    Return a copy with each character mapped by the given translation table.
    
      table
        Translation table, which must be a bytes object of length 256.
    
    All characters occurring in the optional argument deletechars are removed.
    The remaining characters are mapped through the given translation table.

Python2 中有 str 和 Unicode 两种类型,而 python3已经严格区分了 bytes 和 str 两种数据类型,str为原来的unicode,bytes代替了之前的str。

在将字符串存入磁盘和从磁盘读取字符串的过程中,Python 自动地帮你完成了编码和解码的工作,你不需要关心它的过程,例如你能把一个中文赋值给字符串。而使用 bytes 类型,实质上是告诉 Python,不需要它帮你自动地完成编码和解码的工作,而是用户自己手动进行,并指定编码格式。

现在你不能在需要 bytes 类型参数的时候使用 str 参数,反之亦然。str.translate(...)就不适合使用deletechar,因为一个Unicode字符经过编码后可能会和一些英文ACSII码混淆,而bytes中对单个字节操作不会有这种问题。

--结束END--

本文标题: Python3 上 bytes 和 s

本文链接: https://lsjlt.com/news/193471.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python3 上 bytes 和 s
    最近学 Python,在 coursera 上上 Programming for Everybody (Getting Started with Python) 这门课,就顺藤摸瓜地读了 python for informatics 这本...
    99+
    2023-01-31
    bytes
  • 浅析Python3中的bytes和str
    Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示。Python 3不会以任意隐式的方式混用str和bytes,你不能拼接字符串和字节流,也无...
    99+
    2023-01-31
    bytes str
  • python3中bytes与string
    首先来设置一个原始的字符串, Python 3.2.3 (default, Apr 11 2012, 07:15:24) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyri...
    99+
    2023-01-31
    bytes string
  • Python3中的bytes类型和str类型
    目录前言:编码发展的历史bytes和str之间的异同前言: Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分。文本总是Unicode,由str类型表示,二进制...
    99+
    2024-04-02
  • python3.x中str,bytes类
    在研究Python3.x的过程中,遇到的一个纠结了我几天的问题:总是提示“a bytes-like object is required,not 'str' ”在python3.x里增加了bytes类型,并且对str方法进行了修改,让str...
    99+
    2023-01-31
    str bytes
  • 【Python3】f-string——s
    文章目录1. 基本用法2. f-string的一些细节2.1 引号2.2 大括号2.3 反斜杠2.4 多行f-string3. 格式化3.1 类型3.2 对齐与填充3.3 符号位和前缀:针对数值,用于字符串会报错3.4 最小宽度3...
    99+
    2023-01-31
    string
  • python3 字符串str和bytes相互转换
    目录1.相关基础2.str和bytes相互转换2.1 bytes->str2.2 str->bytes1.相关基础 python3中有两种字符串类型:str和bytes ...
    99+
    2024-04-02
  • Python3中str、bytes、bytearray转化
    目录简介str转bytesbytes转strbytes和str转化为bytearray简介 str是采用Unicode编码方式的序列,主要用于显示bytes是字节序列,主要用于网络和...
    99+
    2023-05-14
    Python3 str bytes bytearray 转化
  • python3中bytes和string之间的互相转换
    前言 Python 3最重要的新特性大概要算是对文本和二进制数据作了更为清晰的区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示。Python 3不会以任意隐式的方式混用str...
    99+
    2022-06-04
    bytes string
  • 如何对python的bytes类型数据s
    对str类型数据进行split操作如下: >>> s = 'abc\ndef' >>> s.split('\n') ['abc', 'def'] 对bytes类型数据进行split操作如下: >...
    99+
    2023-01-31
    类型 数据 python
  • python3.x中bytes与字符串详
    原文地址:http://www.crifan.com/summary_python_string_encoding_decoding_difference_and_comparation_python_2_x_str_unicode_vs...
    99+
    2023-01-31
    字符串 bytes
  • centos7中python3环境支持s
    在centos7环境中常规安装python3的话无法支持sqlite3和ssl,所以在安装pytho3是需要带上sqlite3库和ssl库: 下载编译安装sqlite3: # wget https://www.sqlite.o...
    99+
    2023-01-31
    环境
  • mac上安装python3 和 sqli
    建议mac上安装python3不要使用源码自己编译安装,而要使用brew install python3 来安装另外安装完之后创建需环境的话,要指定新的python环境,如下:virtualenv  -p /usr/local/Cellar...
    99+
    2023-01-31
    mac sqli
  • Python3如何实现将bytes图片转jpg格式
    本篇内容主要讲解“Python3如何实现将bytes图片转jpg格式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python3如何实现将bytes图片转jpg格式”吧!需求:我爬取的图片是by...
    99+
    2023-06-07
  • Python3中str、bytes、bytearray转化的方法是什么
    这篇文章主要讲解了“Python3中str、bytes、bytearray转化的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python3中str、bytes、bytearray...
    99+
    2023-07-05
  • centos7上配置python3环境和
        centos7 默认的python版本是2.7,目前主流的python版本都是3.6或者3.7。centos的yum包管理器是基于python2编写的,所以不能直接删除,同时也要配置python环境版本为python3版本,而且需要...
    99+
    2023-01-31
    环境
  • python3-文件的修改——实现类似s
    # Auther: Aaron Fan'''打开文件的模式有三种:r,只读模式(默认)。w,只写模式。【不可读;不存在则创建;存在则删除内容;因为会清空原有文件的内容,一定要慎用】a,追加模式。【可读;   不存在则创建;存在则只追加内容;...
    99+
    2023-01-31
    类似 文件
  • 如何解决python3 整数数组转bytes的效率
    本篇内容主要讲解“如何解决python3 整数数组转bytes的效率”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决python3 整数数组转bytes的效率”吧!昨天在做一道CTF题的时...
    99+
    2023-06-07
  • c/s架构和b/s架构
    C/S架构和B/S架构是两种常见的网络应用架构。C/S指的是客户端/服务器架构,而B/S指的是浏览器/服务器架构,两者都是为了实现交互式的网络应用程序,但在结构和工作方式上有所不同。C/S架构适用于需要更高性能、更好用户体验和离线工作模式的...
    99+
    2023-07-31
  • C语言char s[]和char* s的区别
    目录1、数组本质2、指针3、字符数组4、char * 与 char a[ ]5、char ** 和char *a[]6、C语言中char s[] 和 char *s的区别C语言指针可...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作