网络下载的python代码,版本参差,从python2.x迁移python3.x的过程中,存在print语法问题,即python2.x中print无括号,python3.x中print有括号。

逐行添加括号未免效率过低,因此,可使用正则表达式的方法,提供解决方法。

1、在pycharm编译器中,Ctrl+R调出替换功能框,勾选“Regex”,选择正则表达式替换方法

2、 从上到下,第一个搜索框输入

print (.*?);?$
正则表达式 含义
. 匹配任意字符,除了换行符,当re.DOTALL标记被指定时,则可以匹配包括换行符的任意字符
* 匹配0个或多个的表达式
匹配0个或1个由前面的正则表达式定义的片段,非贪婪方式
() 匹配括号内的表达式,也表示一个组
; 匹配分号(虽然Python中可以在表达式结尾不加分号,但是难免有人会加)
$ 匹配输入字符串的末尾

语句含义:匹配print语句的所有部分,并将print的内容获取到第一个括号里

第二个替换框输入

print($1)

语句含义:替换,并且替换后的括号中的内容就是之前获取到的第一个括号里的内容

3、点击Replace all,替换所有搜索结果,完成替换

pycharm中使用正则表达式批量添加print括号,完美从python2迁移到python3的更多相关文章

  1. Pycharm中通过扩展工具添加QTDesigner

    1.在电脑中找到Designer.exe的安装目录: 2.在pycharm中打开file->Settings->Tools->External Tools进行配置: 配置如下图所示: ...

  2. 针对mysql中分表批量添加字段

    项目中有用到这种类似的分表,如果要添加一个字段的话,该怎么办呢? dba表示弄 一个脚本批量处理就行了,卧槽,这我哪会啊,于是硬着头皮又继续问dba,dba给一个脚本,一看是这样的. #!/bin/b ...

  3. IDEA中通过正则表达式批量替换空白行

    快捷键Ctrl+r 填入^\s*\n,勾选Regex,Replace all

  4. Mac下Pycharm中升级pip失败,通过终端升级pip

    使用 Pycharm 使,需要下载相关的第三方包,结果提示安装失败,提示要升级 pip 版本,但是通过 Pycharm 重新安装却失败,原因可能是出在通过 Pycharm 时升级 pip 是没有权限的 ...

  5. 给PDF批量添加文本链接

    为了进一步补充说明文件中的一些重要内容,PDF文件的创建者会为一些文本创建链接,方便阅读者访问相关的网站,获取更多的信息. 我们可以通过使用pdfFactory文本链接功能来实现以上需求,另外,我们还 ...

  6. 在Visual Studio中使用正则表达式匹配换行和批量替换

    系统环境:Windows 8.1 Enterprise Update 2 x64 开发环境:Mircosoft Visual Studio Ultimate 2013 Update 2 RC 问题:如 ...

  7. 用户管理 之 在Linux系统中,批量添加用户的操作流程

    一.阅读此文件您需要掌握的基础知识: <Linux 用户(user)和用户组(group)管理概述><用户(user)和用户组(group)配置文件详解><Linux 用 ...

  8. .Net中批量添加数据的几种实现方法比较

    在.Net中经常会遇到批量添加数据,如将Excel中的数据导入数据库,直接在DataGridView控件中添加数据再保存到数据库等等. 方法一:一条一条循环添加 通常我们的第一反应是采用for或for ...

  9. pycharm中添加PATH变量

    最近在pycharm中run程序,终端terminal没有问题,在pycharm找不到$PATH中的变量值,如下图所示 同样的命令,在终端敲就没毛病,终端echo $PATH的时候,显示的是有cuda ...

随机推荐

  1. hdu 1556 Color the ball (线段树做法)

    Problem Description N个气球排成一排,从左到右依次编号为1,2,3....N.每次给定2个整数a b(a <= b),lele便为骑上他的“小飞鸽"牌电动车从气球a ...

  2. 关于Html5中的单选与多选

    1.下拉列表样式: <select> <option value ="volvo">Volvo</option> <option valu ...

  3. delphi 取json中数组的值(ISuperArray)

    { "action": "******", "data": [ { "Info1": { "ID": ...

  4. 尝鲜.net core2.1 ——编写一个global tool

    本文内容参考微软工程师Nate McMaster的博文.NET Core 2.1 Global Tools 用过npm开发都知道,npm包都可以以全局的方式安装,例如安装一个http-server服务 ...

  5. 桥梁(Bridge)模式

    桥梁(Bridge)模式:桥梁模式是一个非常有用的模式,也是比较复杂的一个模式.熟悉这个模式对于理解面向对象的设计原则,包括"开-闭"原则(OCP)以及组合/聚合复用原则(CARP ...

  6. webform Response的一些成员

    1. Response.BufferOutPut,关闭缓冲区. 2. Response.Flush,一次性把缓冲区的内容释放出来. 3. Response.Clear,清空缓冲区. 4. Respon ...

  7. (二)RabbitMQ使用笔记

    1.RabbitMQ简介 RabbitMQ是流行的开源消息队列系统,用erlang语言开发.RabbitMQ是AMQP(高级消息队列协议)的标准实现. 官网:http://www.rabbitmq.c ...

  8. Kotlin 函数和函数表达式

    学习了kotlin 的控制. 其中最为强大的是各种控制可以直接作为表达式来使用. 那么在kotlin中,函数也是可以作为表达式来使用. 而且kotlin中函数的创建方式有很多方式. 第一种: 传统创建 ...

  9. VS2010设置默认浏览器

    1.选择项目中起始页右键,然后选择浏览方式 2.然后就可以设置默认浏览器了

  10. cf555e

    cf555e(缩点) 给一个 n 个点 m 条边的图,以及 q 对点 (s,t),让你给 m 条边定向.问是否存在一种方案,使每对点的 s 能走到 t. \(n,m,q≤ 2×10^5\). 首先,在 ...