当前位置:首页 » 编程语言 » python编码规范google

python编码规范google

发布时间: 2024-03-08 06:30:09

python程序有哪些编码规范

编码格式声明
通常,编码格式声明是必需的。如果 python 源码文件没有声明编码格式,python 解释器会默认使用 ASCII 编码,一旦源码文件包含非ASCII编码的字符,python 解释器就会报错。以 UTF-8 为例,以下两种编码格式声明都是合乎规则的。
缩进
统一使用 4 个空格进行缩进。绝对不要用tab, 也不要tab和空格混用。对于行连接的情况,我一般使用4空格的悬挂式缩进。例如:
引号
自然语言使用双引号
机器标识使用单引号
正则表达式使用双引号
空行
编码格式声明、模块导入、常量和全局变量声明、顶级定义和执行代码之间空两行
顶级定义之间空两行,方法定义之间空一行
在函数或方法内部,可以在必要的地方空一行以增强节奏感,但应避免连续空行
导入模块
导入总应该放在文件顶部,位于模块注释和文档字符串之后,模块全局变量和常量之前。导入应该按照从最通用到最不通用的顺序分组,分组之间空一行
标准库导入
第三方库导入
应用程序指定导入
命名规范
模块尽量使用小写命名,首字母保持小写,尽量不要用下划线
类名使用驼峰(CamelCase)命名风格,首字母大写,私有类可用一个下划线开头
函数名一律小写,如有多个单词,用下划线隔开
私有函数可用一个下划线开头
变量名尽量小写, 如有多个单词,用下划线隔开
常量采用全大写,如有多个单词,使用下划线隔开

㈡ Python基本编码格式

1、一般来说,声明编码格式在脚本中是必需的。2、如果Python源码文件没有声明编码格式,Python解释器会默认使用ASCII编码。但出现非ASCII编码的字符,Python解释器就会报错。

1、Python 采用代码缩进和冒号( : )来区分代码块之间的层次。2、在 Python 中,对于类定义、函数定义、流程控制语句、异常处理语句等,行尾的冒号和下一行的缩进,表示下一个代码块的开始,而缩进的结束则表示此代码块的结束。3、Python 中实现对代码的缩进,可以使用空格或者 Tab 键实现。但无论是手动敲空格,还是使用 Tab 键,通常情况下都是采用 4 个空格长度作为一个缩进量(默认情况下,一个 Tab 键就表示 4 个空格)。4、对于 Python 缩进规则,初学者可以这样理解,Python 要求属于同一作用域中的各行代码,它们的缩进量必须一致,但具体缩进量为多少,并不做硬性规定。

正确示例代码:

错误示例代码:

Python中使用 # 进行注释,我们在使用# 的时候,# 号后面要空一格在行内注释的时候,中间应该至少加两个空格

print("你好,世界") # 注释

** 使用的一般性原则:**

1、在二元运算符两边各空一格,算术操作符两边的空格可灵活使用,但两侧务必要保持一致2、不要在逗号、分号、冒号前面加空格,但应该在它们后面加(除非在行尾)3、函数的参数列表中,逗号之后要有空格4、函数的参数列表中,默认值等号两边不要添加空格5、左括号之后,右括号之前不要加添加空格6、参数列表, 索引或切片的左括号前不应加空格

使用的一般性原则:

1、编码格式声明、模块导入、常量和全局变量声明、顶级定义和执行代码之间空两行2、顶级定义之间空两行,方法定义之间空一行3、在函数或方法内部,可以在必要的地方空一行以增强节奏感,但应避免连续空行

1、导入总应该放在文件顶部,位于模块注释和文档字符串之后,模块全局变量和常量之前。

2、导入应该按照从最通用到最不通用的顺序分组,分组之间空一行:

3、每个 import 语句只导入一个模块,尽量避免一次导入多个模块

命名规范这一块的大家应该都比较熟悉了,但是不同的编程语言之间的明明规范也是有所区别的~

Python命名建议遵循的一般性原则:

引号使用的一般性原则:

Python跟其他几个主流编程语言的分号使用区别很大Python的代码末尾不需要加分号,而Java和C#等都需要添加

不要在行尾添加分号,也不要用分号将两条命令放在同一行,例如:

Python学习日记

㈢ url编码问题在python中怎么解决

最近在抓取一些js代码产生的动态数据,需要模拟js请求获得所需用的数据,遇到对url进行编码和解码的问题,就把遇到的问题总结一下,有总结才有进步,才能使学到的知识更加清晰。对url进行编码和解码,python提供了很方便的接口进行调用。

url中的query带有特殊字符(不是url的保留字)时需要进行编码。当url中带有汉字时,需要特殊的处理才能正确编码,以下都只针对这种情形,当然也适用于纯英文字符的url。

(1) url编码:

import urllib

url = 'wd=哈哈' #如果此网站编码是gbk的话,需要进行解码,从gbk解码成unicode,再从Unicode编码编码为utf-8格式。

url = url.decode('gbk', 'replace')

print urllib.quote(url.encode('utf-8', 'replace'))

结果: 3a%2f%2ftest.com%2fs%3fwd%3d%e5%93%88%e5%93%88

(2) url解码:

import urllib

encoded_url = est.com%2fs%3fwd%3d%e5%93%88%e5%93%88'

print urllib.unquote(encoded_url).decode('utf-8', 'replace').encode('gbk', 'replace') #反过来

函数调用的参数以及结果都是utf-8编码的,所以在对url编码时,需要将参数串的编码从原始编码转换成utf-8,

对url解码时,需要将解码结果从utf-8转换成原始编码格式。

依据网站采用的编码不同,或是gbk或是utf-8,赋赋予不同的编码,进行不同的url转码。GBK格式,一个中文字符转为%xx%xx,共两组;utf-8格式,一个中文字符转为%xx%xx%xx,共三组。

  • >>>importsys,urllib

  • >>>s='杭州'

  • >>>urllib.quote(s.decode(sys.stdin.encoding).encode('gbk'))

  • %BA%BC%D6%DD

  • >>>urllib.quote(s.decode(sys.stdin.encoding).encode('utf8'))

  • '%E6%9D%AD%E5%B7%9E'

  • [python]view plain

  • a="墨西哥女孩被拐4年接客4万次生的孩子成为人质-搜狐新闻"

  • printurllib.quote(urllib.quote(a))

  • 进行两次编码转换后,会变为:%25E5%25A2%25A8%25E8%25A5%25BF%25E5%2593%25A5%25E5%25A5%25B3%25E5%25AD%25A9%25E8%25A2%25AB%25E6%258B%25904%25E5%25B9.................................................................................这样的形式。

    同样需要两次解码后才能得到中文。

    最近用python写了个小爬虫自动下点东西,但是url 是含中文的,而且中文似乎是 gbk 编码然后转成 url的。举个例子吧,我如果有个unicode字符串“历史上那些牛人们.pdf”,那么我转换成url之后是,
    t="%20%E5%8E%86%E5%8F%B2%E4%B8%8A%E9%82%A3%E4%BA%9B%E7%89%9B%E4%BA%BA%E4%BB%AC.pdf",
    但是对方网站给的是 s="%C0%FA%CA%B7%C9%CF%C4%C7%D0%A9%C5%A3%C8%CB%C3%C7.PDF"

    >>>print urllib.unquote("%C0%FA%CA%B7%C9%CF%C4%C7%D0%A9%C5%A3%C8%CB%C3%C7.PDF").decode('gbk').encode('utf-8')

    >>>历史上那些牛人们.PDF

㈣ python有哪几种编码方式

第一种:ASCII码。是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,它是现今最通用的单字节编码系统,并等同于国际标准IS/IEC
646。
由于计算机是美国人发明的,因此,最早只有127个字母被编码到计算机李,也就是大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,比如大写字母A的编码是65,小写字母a的编码是97,后128个称为扩展ASCII码。
第二种:GBK和GB2312。能在计算机中显示中文字符是至关重要的,然而ASCII表里一个偏旁部首都没有,所以我们需要一个关于中文和数字对应的关系表,一个字节只能最多表示256个字符,用处理中文显然一个字节是不够的,所以我们需要采用两个字节来表示,所以中国制定了GB2312编码,用来将中文编写进去。
第三种:Unicode。因为各个国家都有一套自己的编码,所以无法避免冲突,因此Unicode诞生了。它可以把所有语言都统一到一套编码里,这样就不会存在乱码问题了,现代操作系统和大多数编程语言都直接支持Unicode。
第四种:UFT-8。基于节约的原则,出现了把Unicode编码转化为可变长编码的UTF-8编码。而UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成一个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节,如果你要传输的文本包含大量英文字符,用UTF-8编码就能节省空间。

㈤ python35个保留字是什么

python35个保留字是['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']。

Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。这些平台包括linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS。

Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE、PocketPC、Symbian以及Google基于linux开发的android平台。


规范的代码:

Python采用强制缩进的方式使得代码具有较好可读性。而Python语言写的程序不需要编译成二进制代码。Python的作者设计限制性很强的语法,使得不好的编程习惯(例如if语句的下一行不向右缩进)都不能通过编译。

其中很重要的一项就是Python的缩进规则。一个和其他大多数语言(如C)的区别就是,一个模块的界限,完全是由每行的首字符在这一行的位置来决定(而C语言是用一对大括号“{}”(不含引号)来明确的定出模块的边界,与字符的位置毫无关系)。

通过强制程序员们缩进(包括if,for和函数定义等所有需要使用模块的地方),Python确实使得程序更加清晰和美观。

㈥ Python字符编码使用什么码

Python 2.x 和 Python 3.x 的字符编码存在较大的区别。下面将分别介绍它们的编码原理及相关内容。

Python 2.x 字符编码

在 Python 2.x 中,str 类型默认使用 ASCII 编码。ASCII 编码是在 1960 年代初开发的一种编码方式,用于将英文字母、数字、符号等字符表示为字节。由于 ASCII 编码只使用了 7 位二进制数,因此只能表示 128 种字符。

当需要使用非 ASCII 字符时,在 str 类型前添加 u 前缀,即可将字符串转换为 Unicode 类型,如下所示:

str1 = 'hello' # 默认使用 ASCII 编码

str2 = u'你好' # 使用 Unicode 编码

Python 3.x 字符编码

在 Python 3.x 中,str 类型默认使用 Unicode 编码,即 Python 2.x 中的 Unicode 类型。Unicode 编码是一种支持全球范围内的字符集,裤岁正能够表示几乎所有语言的字符,包括汉字、日文、希腊字母等。

为了支持字节和 Unicode 类型之间的转换,Python3.x 新增了 bytes 类型。bytes 类型与 str 类型的区别在于,bytes 类型会自动将字符串转雀猛换成字节,而 str 类型会自动将字节转换成字符串。

bytes 类型使用 b 前缀表示,如下所示:

str1 = 'hello' # 默认使用胡悔 Unicode 编码,即 Python 2.x 中的 Unicode 类型

str2 = b'hello' # 使用 bytes 类型

编码原理及注意事项

  • 字符编码的原理在于将字符转换为二进制表示,以便计算机能够处理。

  • ASCII 编码使用 7 位二进制数对字符进行编码,而 Unicode 编码使用 16 位或 32 位二进制数对字符进行编码。

  • 在 Python 中,可以使用 encode 方法将 Unicode 字符串转换为字节类型,使用 decode 方法将字节类型转换为 Unicode 字符串。编码方式有多种,如 UTF-8、GBK、Unicode 等,需要根据实际业务需求进行选择。

  • UTF-8 编码是一种常用的 Unicode 字符编码方式,它使用变长字节对字符进行编码,能够表示几乎所有的字符。GBK 编码是一种用于汉字编码的字符集,只能表示中文字符。

  • Python 3.x 默认使用 UTF-8 编码,因此在读取文件或进行网络传输时,需要明确指定编码方式以避免出现乱码等问题。

总结

由于字符编码十分复杂,涉及到的知识点较多,因此学习时需要耐心且注意细节。在使用 Python 进行编程时,需要根据实际情况选择合适的编码方式,以避免出现乱码等问题。

希望我的回答能够对您有所帮助!

热点内容
androidstudio同步 发布:2024-11-29 04:37:50 浏览:114
python用什么 发布:2024-11-29 04:37:40 浏览:792
w10系统如何搭建ftp服务器 发布:2024-11-29 04:37:36 浏览:789
python模拟访问网页 发布:2024-11-29 04:33:21 浏览:227
除了安卓还有什么可以下载的 发布:2024-11-29 04:05:44 浏览:381
coreldraw用户临时文件夹 发布:2024-11-29 04:05:44 浏览:740
如何设置ipad文件夹 发布:2024-11-29 03:59:16 浏览:141
如何给u盘文件夹加密 发布:2024-11-29 03:48:37 浏览:693
传奇打元宝脚本 发布:2024-11-29 03:39:52 浏览:843
如何装linux系统 发布:2024-11-29 03:38:17 浏览:183