maketrans()方法——创建字符映射的转换表

news2024/10/6 12:29:23

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm=1001.2014.3001.5501

语法参考

maketrans()方法用于创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。

两个字符串的长度必须相同,为一一对应的关系。maketrans()方法的语法格式如下:

str.maketrans(intab, outtab)

l  intab:字符串中要转换的字符组成的字符串。

l  outtab:目标字符组成的字符串。

l  返回值:此方法返回转换表(字典类型),一般配合translate()方法使用。

    快用锦囊

锦囊1  将指定的字符替换为数字

下面使用maketrans()方法,将字符串中出现的“ming”分别对应转换为“1234”,然后使用translate()方法生成新的字符串,代码如下:

intab = 'ming'  #原字符组成的字符串

outtab = '1234' #转换后的字符组成的字符串

str1 = 'www.mingrisoft.com'

mystr = str1.maketrans(intab, outtab)

print(str1.translate(mystr))  #输出转换后的新字符串

运行程序,输出结果为:

www.1234r2soft.co1

锦囊2  同时删除多种不同字符

下面使用maketrans()方法和translate()方法,将文本中存在的不同字符同时删除,代码如下:

s = 'ab110mr'

#字符映射加密

print(str.maketrans('abmr', 'mrab'))

#translate把其转换成字符串

print(s.translate(str.maketrans('abmr', 'mrab')))

运行程序,输出结果为:

{97: 109, 98: 114, 109: 97, 114: 98}

mr110ab

锦囊3  删除垃圾邮件中的“*_/@.”等特殊符号

日常生活中经常会收到一些垃圾邮件,其中包含一些特殊符号,如“*_/@.”等。下面使用maketrans()方法和translate()方法将这些符号删除,代码如下:

import string

temp = '想做/ 兼_职/程序员_/ 的 、加,我Q:  xxxxxx*xxxxxx@xxxxxx.!!??有,惊,喜,哦'

print(temp.translate(str.maketrans('', '', string.punctuation)))

运行程序,输出结果为:

想做 兼职程序员 的 、加我Q:  xxxxxx!!??有惊喜哦

锦囊4  删除垃圾信息中的“》【】”等特殊符号

短息、邮箱、微信、QQ等时常会收到一些垃圾信息,这些信息中夹杂着各种符号。下面将使用maketrans()方法和translate()方法删除垃圾信息中的“》【】”等特殊符号,代码如下:

import string

temp1='【学】【编程】【*】【*】,有需要请加 Q Q :xxxxxx.谢谢!'

str1 = string.punctuation + '》【】' # 引入英文符号常量,并附加自定义字符

print(temp1.translate(str.maketrans('', '', str1)))

运行程序,输出结果为:

学编程,有需要请加 Q Q xxxxxx谢谢!

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1886104.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Kubernetes】加入节点Node及问题

命令 分别再node节点机器上,执行如下命令: kubeadm join [master机器ip:端口] --token [master机器初始化生成的token] --discovery-token-ca-cent-hash [master机器初始化生成的hash]问题 由于清屏没有记住token和hash的时候: 1&#xff…

外贸企业选择什么网络?

随着全球化的深入发展,越来越多的国内企业将市场拓展到海外。为了确保外贸业务的顺利进行,企业需要建立一个稳定、安全且高速的网络。那么,外贸企业应该选择哪种网络呢?本文将为您详细介绍。 外贸企业应选择什么网络? …

axios的底层ajax,XMLHttpRequest原理解释及使用方法

定义 ajax全称asychronous JavaScript and XML 意思是异步的 JavaScript和xml, 也就是通过javascript创建XMLHttpRequest (xhr)对象与服务器进行通信 步骤 创建实例对象,初始请求方法和url,设置监听器监听请求完成…

【Rust入门教程】安装Rust

文章目录 前言Rust简介Rust的安装更新与卸载rust更新卸载 总结 前言 在当今的编程世界中,Rust语言以其独特的安全性和高效性吸引了大量开发者的关注。Rust是一种系统编程语言,专注于速度、内存安全和并行性。它具有现代化的特性,同时提供了低…

超简洁Django个人博客系统(适合初学者)

一、环境介绍 Django4.2.13Markdown3.3.4PyMySQL1.1.1Python3.8PyCharm 2023.1.2 (Professional Edition) 二、功能简介 用户登录 通过在pycharm终端执行以下命令创建超级管理员。python manage.py create createsuperuser 创建完成后再通过新建的超级管理员账号进行登录 …

The First项目报告:NvirWorld与区块链游戏的未来

根据官方公告,The Fisrt现货区将于2024年7月2日16:00上架NVIR/USDT交易对,NVIR是NvirWorld平台的原生代币。作为一个去中心化解决方案,NvirWorld为开发者提供了一个简化且适应性强的环境,旨在通过优化的扩展解决方案来降低交易成本…

windows USB设备驱动开发-开发USB 设备端驱动

USB 设备是通过单个端口连接到计算机的外设,例如鼠标设备和键盘。 USB 客户端驱动程序是计算机上安装的软件,该软件与硬件通信以使设备正常运行。 如果设备属于 Microsoft 支持的设备类,Windows 会为该设备加载 Microsoft 提供的 USB 驱动程序…

如何离线安装ctags

首先下载一个ctags源码包,ctags-master.zip,拷贝到ubuntu20中, #unzip ctags-master.zip 找到README文件,找到install的描述: 运行ctags解压后的目录下的autogen.sh 发现缺少autoreconf, autoconf, automake 等一些…

问题集锦1

01.inner中使用JwtTokenUtil.getUserCode() 前端调用上传(java),上传使用加购 Overridepublic Boolean insertShoppingCart(InsertShoppingCartParamsDto dto) {// 通过userCode,itemCode和supplierCode来判断当前加购人添加到购物车的商品是…

iminuit,一个神奇的 Python 库!

更多资料获取 📚 个人网站:ipengtao.com 大家好,今天为大家分享一个神奇的 Python 库 - iminuit。 Github地址:https://github.com/scikit-hep/iminuit 在科学计算和数据分析领域,参数估计和最优化是非常重要的任务。…

【Windows】Visual Studio Installer下载缓慢解决办法

【Windows】Visual Studio Installer下载缓慢解决办法 1.背景2.分析3.结果 1.背景 使用visual studio在线安装包进行IDE安装,发现下载几乎停滞,网速几乎为零。 经过排查并不是因为实际网络带宽导致。 这里涉及DNS知识; DNS(Dom…

Python学习速成必备知识,(20道练习题)!

基础题练习 1、打印出1-100之间的所有偶数: for num in range(1, 101):if num % 2 0:print(num) 2、打印出用户输入的字符串的长度: string input("请输入一个字符串:")print("字符串的长度为:", len(str…

【第二周】基础语法学习

目录 前言初始化项目文件介绍基本介绍JSWXMLWXSS 常见组件基础组件视图容器match-mediamovable-area/viewpage-containerscroll-viewswiper 表单组件自定义组件 模板语法数据绑定单向数据绑定双向数据绑定 列表渲染条件渲染模板引用 事件系统事件类型事件绑定阻止冒泡互斥事件事…

8617 阶乘数字和

这是一个关于计算阶乘结果所有位上的数字之和的问题。我们可以通过以下步骤来解决这个问题: 1. 首先,我们需要一个函数来计算阶乘。由于n的范围可以达到50,阶乘的结果可能非常大,所以我们需要使用一个可以处理大整数的数据类型&a…

[Information Sciences 2023]用于假新闻检测的相似性感知多模态提示学习

推荐的一个视频:p-tuning P-tunning直接使用连续空间搜索 做法就是直接将在自然语言中存在的词直接替换成可以直接训练的输入向量。本身的Pretrained LLMs 可以Fine-Tuning也可以不做。 这篇论文也解释了为什么很少在其他领域结合知识图谱的原因:就是因…

理解MySQL核心技术:触发器功能特点与应用案例解析

触发器(Trigger)是MySQL中一个重要的功能,它能够在特定的数据表操作发生时自动执行预定义的SQL语句,从而实现在数据库层面的自动化操作和数据维护。在这篇文章中,我们将进一步了解MySQL触发器的相关知识,包…

渲染100农场如何渲染全景图?渲染100邀请码1a12

全景图的制作需要渲染,以国内知名的渲染农场—渲染100为例,我来说下操作过程。 1、进入渲染100官网,点击右上角注册按钮完成注册,记得邀请码一栏填1a12,有30元礼包和2张免费渲染券。 渲染100官网:http://…

【C语言】extern 关键字

在C语言中,extern关键字用于声明一个变量或函数是定义在另一个文件中的。它使得在多个文件之间共享变量或函数成为可能。extern关键字常见于大型项目中,通常用于声明全局变量或函数,这些变量或函数的定义位于其他文件中。 基本用法 变量声明…

Python--进程基础

创建进程 os.fork() 该方法只能在linux和mac os中使用,因为其主要基于系统的fork来实现。window中没有这个方法。 通过os.fork()方法会创建一个子进程,子进程的程序集为该语句下方的所有语句。 import os​​print("主进程的PID为:" , os.g…