基本开发规范、格式化输出与字体简单处理

1,开发规范

2,格式化输出

3,输出字体简单处理

 

 

1,开发规范

  易读,易维护,易扩展

  字符编码,执行平台系统编码,文件编码,文件内容编码三统一。

  使用python,需要在开始前声明字符编码规则(尤其是用python2)。# -*-coding:utf-8-*-

  变量名,门牌号比喻,指向内存地址,命名规则(官方推荐下划线形式,须对指向的内容有描述性)

       python用缩进区分代码块,顶级代码块必须顶行写,同级代码块缩进必须一致。需要注意的是,在不同系统间Tab键的定义有别,先将Tab设置自动转为4个空格,多行快速缩进,设置好Tab键的情况下,shift+Tab

      注释:单行用#空格即# ,多行用多个#或者用三引号“”“  ”“”。  快捷键操作:  选定注释对象,ctrl+/ 

  • PEP8基本规则:
    • 关于缩进:使用足够的缩进,使得代码的可读性更高,不足的缩进,不好看。另外,python流行的缩进是仅使用空格,所以制表符和空格绝对不能混淆,更不能混用,尽量使用空格而非制表符,或者提前设置将制表符自动转化为4个空格
    • 关于空行:类和顶级函数之间,用双空行间隔;类内部函数之间,用单空行间隔
    • 关于每行的内容:每行最多放79个字符
    • py2默认编码为ascii或者Latin-1,但py3的默认编码为utf-8
    • 在模块导入时,大模块每个模块用一个import导入一下,尽量避免几个模块一并import。但是如果是是从大模块中导入几个小模块,from   import   可以合并。
    • 元素之间的空格,在运算符两侧都各加一个空格;在逗号,分号,冒号之后需要留一个空格但是其前面不能加空格。注意在定义和调用函数时,关键参数的等号两侧不能加空格。
    • 注释应当易读,可读性差的注释还不如没有注释。单行注释#后要加一个空格,多行注释,注意段落关系。如果注释内容较长,内容最后要用句号结束,并且句号后要保留两个空格。行内注释,尽量少用。
    • 关于命名规范

 

 

 

 

 

2,格式化输出

      2.1 “”“       ”“”  用于多行注释的同时,能方便的用于定义输出格式 

      2.2占位符

      %方式基本格式 % [(name)] [flags] [width] .[precision] typecode

      (name)为指定key值,可选

       [flags]  可选,主要作用如下表:

可选项

实现功能

+

右对齐;并且在给定的数字前加符号(正,负)

-

左对齐;正数无符号,负数加负号

空格

右对齐;正数前加空格,负数前加负号

0

右对齐;正数前无符号,负数前加负号用0填充空白

 

 

      [width] 占用宽度,可选

      [precision] 小数点后保留的位数,可选

      typecode,指定替换的值得类型:

类型

规定范围

s

字符串

d

十进制整数

e

科学计数法

E

科学计数法,用E表示

f,F

转化为浮点型

o

整数转化为八进制表示

g

保留有效数字为,并转化成小数或科学计数法输出

G

与g的功能区别在于,E表示科学计数

c

数字转化为Unicode对应的值,

r

获取所获对象的__repr__方法返回值

%

%%可表示一个百分号

       总结一下常见的部分占位符:

类型

占位符

描述

字符串输出

%s

字符串占位符

%20s

右对齐,占位符20位

%-20s

左对齐,占位符20位

%.5s

截取5位字符串

%20.5s

20位占位符,截取5位字符串

数字输出

%i

整数

%d

十进制整数

%o

八进制整数

%x

十六进制整数

%X

十六进制整数,大写

%u

无符号整数

%f

浮点数

%.2f

截取浮点数2位小数

%e

科学计数法(默认保留小数点后6位有效数字)

%.4e

科学计数法,保留4位小数位

%g

在保证六位有效数字的前提下,使用小数方式,否则使用科学计数法

%.2g

保留2位有效数字的前提下,使用小数方式或科学计数法

            2.3 format 方式格式化输出

       基本语法格式[ [fill] align] [sign] [#] [0] [width] [,] [.precision] [type]

      [fill]可选部分,指定空白的填充内容

      align可选,配合width使用实现对齐方式,具体的:

选项

实现效果

内容左对齐

内容右对齐(默认)

=

内容右对齐,将符号放置在填充字符的左侧,只对数字类型数据有效,符号+填充对象+数字

^

内容居中处理

 

      [sign]可选,有无符号数字

      [#]可选,实现二进制,八进制,十六进制前的特殊标识。0b/ 0o/ 0x

      [,]可选,数字的千位分隔符

      [width] 可选,格式化输出所占宽度

     [ .precision] 可选 ,小数位保留精度

      [type] 可选,具体的格式化的类型。参照%格式

      几个使用实例:

print('my name is {name} my age is {age}'.format(name='abc',age=18))
print('my name is {} my age is {}'.format('abc',18))
print('my name is {0}{0} my age is {1}'.format('abc',18))

 

3,输出字体简单处理

        基本语法格式:“\033[ 显示方式; 字背景颜色; 字体颜色m 显示内容字符串 \033[0m”

       显示方式主要参数:

参数

描述

0m

默认值

1m

高亮

22m

非粗体

4m

下划线

24m

非下划线

5m

闪烁

25m

非闪烁

7m

反显

27m

非反显

30m——37m

设置前景色

40m——47m

设置背景色

      字体颜色主要参数:

前景色(字体)

背景色

30(黑色) 

40(黑色) 

31(红色) 

41(红色) 

32(绿色) 

42(绿色) 

33(黄色) 

43(黄色) 

34(蓝色) 

44(蓝色) 

35(洋红) 

45(洋红) 

36(青色) 

46(青色) 

37(白色)

47(白色)

posted @ 2018-09-23 23:53  林山风火  阅读(220)  评论(0编辑  收藏  举报