Autopep8的使用(python自动编排工具)


Posted in Python onMarch 02, 2021

什么是Autopep8

在python开发中, 大家都知道,python编码规范是PEP8,但是在市级开发中有的公司严格要求PEP8规范开发, 有的公司不会在乎那些,在我的理解中,程序员如果想走的更高,或者更远,干任何事情必须得专业化(本人理解方式), 不要求很多东西都是精通,但最少得有一门精通的语言,小弟在此在大佬面前装逼了, 忘看过的大牛不要揭穿, 留下你懂的我不懂的知识,大家一起学习,一起进步。 谢谢。

Autopep8是一个将python代码自动编排的一个工具,它使用pep8工具来决定代码中的那部分需要被排版,Autopep8可以修复大部分pep8工具中报告的排版问题。很多人都知道 Ctrl+Alt+L 也可以排版, 但是我要告诉你,快捷键只是可以简单的排版。跟Autopep8是无法相比的。

安装Autopep8:

pip install autopep8

安装完成之后,import导入一下,测试是否安装成功。

Aytopep8的使用

安装完成之后,打开pycharm,创建一个新的python文件, demo.py 将一下代码放入文件中。

def example1():
  some_tuple = (1, 2, 3, 'a')
  some_variable = {
    'long': 'Long code lines should be wrapped within 79 characters.',
    'other': [math.pi, 100, 200, 300, 9876543210,'This is a long string that goes on'],
    'more': { 'inner': 'This whole logical line should be wrapped.',some_tuple: [ 1,20, 300, 40000,500000000,60000000000000000]}}
  return (some_tuple, some_variable)

def example2(): return ('' in {'f': 2}) in {'has_key() is deprecated': True};

class Example3(object):
  def __init__(self, bar):
    # Comments should have a space after the hash.
    if bar:
      bar += 1
      bar = bar * bar
    else:
      some_string = """
            Indentation in multiline strings should not be touched.Only actual code should be reindented.
"""

这几行代码看上去是不是很乱, 接下来就要使用:Autopep8模块了

打开cmd找到demo.py的文件的上级目录,

然后输入以下命令:

autopep8 --in-place --aggressive --aggressive file.py

file.py 是你的demo.py

输入命令,按回车执行成功是不返回的, 执行完成之后就可以了,在次打开文件就可以看到变化了。

import math
import sys


def example1():
  some_tuple = (1, 2, 3, 'a')
  some_variable = {
    'long': 'Long code lines should be wrapped within 79 characters.',
    'other': [
      math.pi,
      100,
      200,
      300,
      9876543210,
      'This is a long string that goes on'],
    'more': {
      'inner': 'This whole logical line should be wrapped.',
      some_tuple: [
        1,
        20,
        300,
        40000,
        500000000,
        60000000000000000]}}
  return (some_tuple, some_variable)


def example2(): return ('' in {'f': 2}) in {'has_key() is deprecated': True};


class Example3(object):
  def __init__(self, bar):
    # Comments should have a space after the hash.
    if bar:
      bar += 1
      bar = bar * bar
    else:
      some_string = """
            Indentation in multiline strings should not be touched.Only actual code should be reindented.
"""

执行完Autopep8之后代码是不是看上去简洁多了。

有人会说,没写一个函数就执行一遍命令, 是不是有点麻烦啊, 是的, 有有点麻烦, 但是pycharm是可以配置的, 配置过程如下:

1: File ---> Settings ---> Tools ---> External Tools

打开之后,可以看见窗体左上角有一个 + 号, 点击+号添加。

Autopep8的使用(python自动编排工具)

Name: 名称可以随意

Program: autopep8    # 前提必须先安装
Arguments: --in-place --aggressive --aggressive $FilePath$
Working directory: $ProjectFileDir$

Advanced Options
        ---- Outputfilters:
$FILE_PATH$\:$LINE$\:$COLUMN$\:.*

以上配置完成之后点击 OK 保存即可。

快捷使用:

Autopep8的使用(python自动编排工具)

Tools ---> External Tools ---> Autopep8 鼠标点击一下即可。

Autopep8的使用(python自动编排工具)

到此这篇关于Autopep8的使用(python自动编排工具)的文章就介绍到这了,更多相关Autopep8 使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python的绘图工具matplotlib使用实例
Jul 03 Python
Python实现的查询mysql数据库并通过邮件发送信息功能
May 17 Python
Python实现的本地文件搜索功能示例【测试可用】
May 30 Python
Python类的继承用法示例
Jan 31 Python
对python中的try、except、finally 执行顺序详解
Feb 18 Python
使用Python的OpenCV模块识别滑动验证码的缺口(推荐)
May 10 Python
python使用numpy实现直方图反向投影示例
Jan 17 Python
python爬虫用mongodb的理由
Jul 28 Python
Django mysqlclient安装和使用详解
Sep 17 Python
python statsmodel的使用
Dec 21 Python
Python采集壁纸并实现炫轮播
Apr 30 Python
使用Python开发冰球小游戏
Apr 30 Python
python 将Excel转Word的示例
Mar 02 #Python
Python字节单位转换(将字节转换为K M G T)
Mar 02 #Python
Python使用cn2an实现中文数字与阿拉伯数字的相互转换
Mar 02 #Python
jupyter notebook指定启动目录的方法
Mar 02 #Python
python实现发送邮件
Mar 02 #Python
matplotlib阶梯图的实现(step())
Mar 02 #Python
Python读写Excel表格的方法
Mar 02 #Python
You might like
php获取服务器信息的实现代码
2013/02/04 PHP
Destoon实现多表查询示例
2014/08/21 PHP
php实现Mongodb自定义方式生成自增ID的方法
2015/03/23 PHP
php 处理png图片白色背景色改为透明色的实例代码
2018/12/10 PHP
PHP实现对数字分隔加千分号的方法
2019/03/18 PHP
JavaScript 一行代码,轻松搞定浮动快捷留言-V2升级版
2010/04/02 Javascript
js获取dom的高度和宽度(可见区域及部分等等)
2013/06/13 Javascript
限制上传文件大小和格式的jQuery插件实例
2015/01/24 Javascript
JavaScript弹出新窗口后向父窗口输出内容的方法
2015/04/06 Javascript
javascript实现在网页任意处点左键弹出隐藏菜单的方法
2015/05/13 Javascript
7个去伪存真的JavaScript面试题
2016/01/07 Javascript
修改Jquery Dialog 位置的实现方法
2016/08/26 Javascript
微信开发 消息推送实现代码
2016/10/21 Javascript
微信小程序 富文本转文本实例详解
2016/10/24 Javascript
jQuery使用方法
2017/02/04 Javascript
Angularjs单选改为多选的开发过程及问题解析
2017/02/17 Javascript
angular 数据绑定之[]和{{}}的区别
2018/09/25 Javascript
python中logging包的使用总结
2018/02/28 Python
Django使用AJAX调用自己写的API接口的方法
2019/03/06 Python
Python使用dict.fromkeys()快速生成一个字典示例
2019/04/24 Python
Python turtle库绘制菱形的3种方式小结
2019/11/23 Python
将 Ubuntu 16 和 18 上的 python 升级到最新 python3.8 的方法教程
2020/03/11 Python
使用CSS3制作一个简单的Chrome模拟器
2015/07/15 HTML / CSS
详解基于 Canvas 手撸一个六边形能力图
2019/09/02 HTML / CSS
环法自行车赛官方商店:Le Tour de France
2017/08/27 全球购物
The Beach People美国:澳洲海滨奢华品牌
2018/07/05 全球购物
美国最大的在线寄售和旧货店:Swap.com
2018/08/27 全球购物
国外的一些J2EE面试题一
2012/10/13 面试题
成绩单公证书
2014/04/10 职场文书
火灾现场处置方案
2014/05/28 职场文书
副总经理任命书
2014/06/05 职场文书
政府法律服务方案
2014/06/14 职场文书
金融专业毕业生自荐信
2014/06/26 职场文书
商铺门前三包责任书
2014/07/25 职场文书
2014年结对帮扶工作总结
2014/12/17 职场文书
2015年百日安全活动总结
2015/03/26 职场文书