zoukankan      html  css  js  c++  java
  • py2 to py3

    网络下载的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,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
    如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

  • 相关阅读:
    字符串样式效果
    javaScript 继承原型链
    javaScript 的继承,call()
    二维数组中的查找
    如何证明一个映射是混沌的。
    netty如何知道连接已经关闭,socket心跳,双工?异步?
    java中线程安全的map是ConcurrentHashMap
    failed to load class "org.sl4j.impl.StaticLoggerBinder"
    Tcp端口以及端口相关协议详解
    Tcp的三次握手,以及原理详解
  • 原文地址:https://www.cnblogs.com/jqpy1994/p/12191657.html
Copyright © 2011-2022 走看看