Pycharm配置autopep8实现流程解析


Posted in Python onNovember 28, 2020

关于PEP 8

PEP 8,Style Guide forPythonCode,是Python官方推出编码约定,主要是为了保证 Python 编码的风格一致,提高代码的可读性。

官网地址:https://www.python.org/dev/peps/pep-0008/

关于Autopep8

Autopep8是自动将Python代码格式化为符合PEP 8风格的工具。它使用pycodestyle工具来确定代码的哪些部分需要被格式化。Autopep8能够修复大部分pycodestyle检测的格式问题。

github地址:https://github.com/hhatto/autopep8

下载安装Autopep8

pip install autopep8

使用Autopep8

命令行使用方式如下

$ autopep8 --in-place --aggressive --aggressive <filename>
$ autopep8 --in-place --aggressive --aggressive Student.py

Pycharm配置Autopep8方法

1)具体流程:选择菜单「File」?>「Settings」?>「Tools」?>「External Tools」?>设置相关配置 -> 点击加号添加工具

填写如下配置项,点击「OK」保存

Settings?>Tools?>External Tools 点击添加按钮Name:autopep8(可以自定义)

Tools settings:

Programs:autopep8(不能修改)
Parameters:--in-place --aggressive --aggressive $FilePath$
Working directory:$ProjectFileDir$

Advanced Options:在output filters添加:$FILE_PATH$\:$LINE$\:$COLUMN$\:.*

3) 使用autopep8自动格式化你的python代码

import math


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.
"""

第一种方式:

编写完代码后,右键选择「Extern Tools」?>「autopep8」

Pycharm配置autopep8实现流程解析

第二种方式:

选择菜单「Tool」?>「Extern Tools」?>「autopep8」即可

Pycharm配置autopep8实现流程解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 字符串split的用法分享
Mar 23 Python
Python 文件操作的详解及实例
Sep 18 Python
Python实现PS滤镜的旋转模糊功能示例
Jan 20 Python
使用python获取csv文本的某行或某列数据的实例
Apr 03 Python
对numpy和pandas中数组的合并和拆分详解
Apr 11 Python
python实现飞机大战
Sep 11 Python
djang常用查询SQL语句的使用代码
Feb 15 Python
scrapy-redis的安装部署步骤讲解
Feb 27 Python
ML神器:sklearn的快速使用及入门
Jul 11 Python
python自动结束mysql慢查询会话的实例代码
Oct 27 Python
python统计mysql数据量变化并调用接口告警的示例代码
Sep 21 Python
Python爬虫自动化爬取b站实时弹幕实例方法
Jan 26 Python
Python3.8.2安装包及安装教程图文详解(附安装包)
Nov 28 #Python
Python安装Bs4的多种方法
Nov 28 #Python
Pycharm Plugins加载失败问题解决方案
Nov 28 #Python
python3.8.3安装教程及环境配置的详细教程(64-bit)
Nov 28 #Python
Pycharm配置lua编译环境过程图解
Nov 28 #Python
最新版 Windows10上安装Python 3.8.5的步骤详解
Nov 28 #Python
用 python 进行微信好友信息分析
Nov 28 #Python
You might like
在mysql数据库原有字段后增加新内容
2009/11/26 PHP
PHP 学习路线与时间表
2010/02/21 PHP
批量去除PHP文件中bom的PHP代码
2012/03/13 PHP
适合PHP初学者阅读的4本经典书籍
2016/09/23 PHP
PHP 7.1新特性的汇总介绍
2016/12/16 PHP
PHP常量及变量区别原理详解
2020/08/14 PHP
脚本安需导入(装载)的三种模式的对比
2007/06/24 Javascript
用js脚本控制asp.net下treeview的NodeCheck的实现代码
2010/03/02 Javascript
script标签的 charset 属性使用说明
2010/12/04 Javascript
DWZ刷新dialog解决方法
2013/03/03 Javascript
js实现的常用的左侧导航效果
2013/10/17 Javascript
Mac地址验证的javascript代码
2013/11/09 Javascript
javascript写的一个模拟阅读小说的程序
2014/04/04 Javascript
JS获得图片alt信息的方法
2015/04/01 Javascript
JS实现可展开折叠层的鼠标拖曳效果
2015/10/09 Javascript
jQuery实现移动端滑块拖动选择数字效果
2015/12/24 Javascript
springMVC结合AjaxForm上传文件
2016/07/12 Javascript
微信小程序 wx.request(OBJECT)发起请求详解
2016/10/13 Javascript
轻松搞定jQuery+JSONP跨域请求的解决方案
2018/03/06 jQuery
微信小程序基于Taro的分享图片功能实践详解
2019/07/12 Javascript
vue实现标签云效果的方法详解
2019/08/28 Javascript
es5 类与es6中class的区别小结
2020/11/09 Javascript
[40:13]Ti4 冒泡赛第二天 iG vs NEWBEE 2
2014/07/15 DOTA
[06:44]2018DOTA2亚洲邀请赛4.5 SOLO赛 MidOne vs Sumail
2018/04/06 DOTA
[47:46]完美世界DOTA2联赛 Magma vs GXR 第三场 11.07
2020/11/10 DOTA
Python中的包和模块实例
2014/11/22 Python
python自定义类并使用的方法
2015/05/07 Python
python基于ID3思想的决策树
2018/01/03 Python
Python版名片管理系统
2018/11/30 Python
Python小白必备的8个最常用的内置函数(推荐)
2019/04/03 Python
python用tkinter实现一个简易能进行随机点名的界面
2020/09/27 Python
几个MySql的面试题
2013/04/22 面试题
元旦联欢会主持词
2014/03/26 职场文书
教师产假请假条范文
2014/04/10 职场文书
工作骂脏话检讨书
2014/10/05 职场文书
CSS中理解层叠性及权重如何分配
2022/12/24 HTML / CSS