python参考手册--第2章词汇和语法约定
1.续行符\
三引号、()、{}、[]中的内容不需要续行符
2.空格缩进
优选空格作为缩进,不要用tab,这是因为不同操作系统下tab对应的空格不一样,而python是通过严格的空格来控制语句块的。
3.标识符中的下划线
(1)以一个下划线开始的标识符:_func()
不能通过from module import * 语句导入
(2)前后双下划线的标识符:__init__()
为特殊方法保留的
(3)前面双下划线的标识符:__add()
实现类的私有成员,即private属性
4.字符编码
字符编码转换需要先转成unicode,才能转成其他的
(1)utf8转gbk
>>> a = '\xe8\x82\x89\xe7\xb2\x89\xe8\x89\xb2'
>>> b = a.decode('utf8')
>>> b
u'\u8089\u7c89\u8272'
>>> a
'\xe8\x82\x89\xe7\xb2\x89\xe8\x89\xb2'
>>> print a
肉粉色
>>> c = a.decode('utf8').encode('gbk')
>>> c
'\xc8\xe2\xb7\xdb\xc9\xab'
>>> print c
肉粉色
(2)gbk转utf8
>>> c=unicode('风继续吹','gbk').encode('utf8')
>>> c
'\xe9\xa3\x8e\xe7\xbb\xa7\xe7\xbb\xad\xe5\x90\xb9'
>>> d= unicode('风继续吹','gbk')
>>> d
u'\u98ce\u7ee7\u7eed\u5439'
>>> print c
风继续吹
或者:
>>> a = '风继续吹'
>>> b = a.decode('gbk')
>>> b
u'\u98ce\u7ee7\u7eed\u5439'
>>> print b
风继续吹
>>> c = b.encode('utf8')
>>> c
'\xe9\xa3\x8e\xe7\xbb\xa7\xe7\xbb\xad\xe5\x90\xb9'
>>> print c
风继续吹
5.字符串
unicode字符串:
u'\u98ce\u7ee7\u7eed\u5439'
原始字符串:
r'hello\r\n\r\n' #取消转义
>>> print r'hello\r\n\r\n'
hello\r\n\r\n
5.文档字符串
如果模块、类、函数的第一条语句是一个字符串,该字符串就是该对象的文档字符串:
>>> def func(cid):
"cid is: customer id!"
print cid
>>> dir(func)
['__call__', '__class__', '__closure__', '__code__', '__defaults__', '__delattr__', '__dict__', '__doc__', '__format__', '__get__', '__getattribute__', '__globals__', '__hash__', '__init__', '__module__', '__name__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'func_closure', 'func_code', 'func_defaults', 'func_dict', 'func_doc', 'func_globals', 'func_name']
>>> print func.__doc__
cid is: customer id!
6.装饰器
每个方法可以多个装饰器:
@ClassName
@funcName
def func()
pass
7.源代码编码
源代码编码默认使用ASCII,如果需要在源代码中使用中文,源代码编码需要设置为utf8:
在python程序的第一行设置环境变量、第二行设置源编码:
#!/var/bin/env python
#-*- coding: UTF-8 -*-
var = '风继续吹'
则var将直接编码成utf-8
python参考手册--第2章词汇和语法约定的更多相关文章
- python参考手册--第1章python简介
1.if __name__ == '__main__': 直接运行myModel.py时,当前模块的名字是main:import myModel然后运行的时候当前模块的名字是myModel. 2.ev ...
- python参考手册--第9章
1.读取命令行选项 (1)sys.args python启动时,命令行选项设置在列表sys.args中. sys.args[0]:xxx.py sys.args[1:]: 其他参数 (2)optpar ...
- python参考手册--第8章
1.模块和import (1)首次import module会做以下3件事: a)创建新的命名空间,用作在该源文件中定义的所有对象的容器.在模块中定义的函数和方法在使用global语句时将访问该命名空 ...
- python参考手册--第3章类型和对象
1.对象的身份.类型.值 (1)身份:对象在内存中位置的指针,地址值, >>> a = [1,2,3,4,5] >>> id(a)48497328 >> ...
- 《python参考手册(第四版)》【PDF】下载
<python参考手册(第四版)>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382222 内容介绍 本书是权威的Python语 ...
- python参考手册--第4、5、6、7章
1.zip zip(s,t):将序列组合为一个元组序列[(s[0],t[0]), (s[1],t[1]), (s[2],t[2]), (s[3],t[3]),...] >>> s = ...
- python参考手册--第10、11章执行环境、调试
1.解释器选项和环境 python [options] [-c cmd | filename | - ] [args] 例如:python -m pdb test.py 以脚本的形式运行库模块pdb ...
- python参考手册 Read
P28 复制 a = [1,2,3,[1,2]] b = a b is a # True c = list[a] # shallow copy c is a # False c[3][0] = 100 ...
- [翻译] C++ STL容器参考手册(第一章 <array>)
返回总册 本章节原文:http://www.cplusplus.com/reference/array/array/ 1. std::array (C++11支持) template < cla ...
随机推荐
- C#中的DateTime:本周第一天,本月第一天,今年第一天,本周第一天的时间
有时辰需要按照当前时刻,断定其它的都没有什么难度,只是本季度稍稍麻烦些.因为一年有四个季度,可以按照当前月份,获得本季度第一个月的月份,然后这个月的第一天,就是本季度的第一天了 DateTime dt ...
- ### OpenCV安装(Linux)
### OpenCV安装(Linux) @(gr_self)[ffmpeg | openCV] #@author: gr #@date: 2015-09-02 #@email: forgerui@gm ...
- Quartz2D 图像处理
首先感谢一片枫叶总结出这么好的文章,文章出处:http://www.cnblogs.com/smileEvday/archive/2013/05/25/IOSImageEdit.html 本文将为大家 ...
- Java实战之04JavaWeb-03会话技术
一.会话技术简介 1.什么是会话,为什么需要会话技术? 会话:从打开一个浏览器,访问某个网站,到关闭这个浏览器的这个过程称为一次会话.http协议是状态的. 2.会话技术的分类 客户端存储技术:Coo ...
- GISer 应届生找工作历程(完结)
有半个月没更博客了,前几天在学校准备这保研,因为没有时间复习高数自然就没有过. 也没啥的,我本来就不打算复习,就是看看运气咋样(哈哈).在昨天开始跑的招聘会,一天下来不同地方跑了三家挺累的,记录 ...
- css圆角 四边投影
-moz-border-radius: 30px;-webkit-border-radius: 30px; border-radius:30px; -webkit-box-shadow:0 0 10p ...
- mouseenter 事件,固定右侧客服特效
不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件. 只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件. 当鼠标指针离开元素时,会发生 mouseleave 事件 ...
- PNG兼容IE6解决方法
虽然说现在早就不用ie6浏览器了,可以还是有一小部分还在使用 ,刚好公司也有要求~~~ <p> E6不兼容png图片,确实让网页的图片质量大大下降,为了兼容万恶的IE6,总结了下面几种方法 ...
- 利用Google GCM发送push通知到Android客户端
// 这个可以需要在google账号中申请,勾选gcm服务选项 $apiKey = 'AIzaSyC6h3ysrn2HDCBqONTo2vKIVVuktIFoxxx'; $headers = arra ...
- CCNP第一天 Rip综合实验
实验题如图所示 R2--R6之间是RipV2, R7和R8是RipV1, 除了R2到R6是快速以太网线,其他均为串线. 所用的拓扑图为CCNP标准版拓扑 如下: ------------------- ...