python编程风格
python简洁明了的编程格式,如果不按照python既定的格式进行编写程序,直接报错,所以说,刚开始编写python代码会常常报错。这里我就用C语言和python语言做简单的比较。
- C语言显示
hello world
#include <stdio.h>
void hello()
{
printf("hello!\n");
}
void main()
{
hello();
}
从上面的代码我们会发现,C代码块是通过花括号{}
做以区别。
- python显示
hello world
#!/usr/bin/env python
def hello():
print "hello world"
def main():
hello()
main()
根据上面的两个不同编程语言实现同一功能的分析,总结python编程初级要掌握的编程风格如下:
- 不要在行尾加分号;
- 每行不超过80个字符;
- Python语言利用缩进表示语句块的开始和退出(Off-side规则),而非使用花括号或者某种关键字。
- 增加缩进表示语句块的开始,而减少缩进则表示语句块的退出。缩进成为了语法的一部分。
python注释
- 单行注释:
#
常被用作单行注释符号,#
开头的行,其右边的任何数据都会被忽略,当做是注释。 - 块注释: 需要批量文本或代码时,使用三引号
''' '''
.,当然三引号也可以实现多行文本格式化打印。
理解字符编码
- ASCII:美国人发明了计算机,用二进制存储数据,英文字母加各个字符一共128个,每8位存储一个字符,2^8=256,可通过ord()函数去查看字符对应的ASCII码。
- Unicode:但是ASCII码忽略了中文,韩文,日文等其他国家的文字,这个时候256个字符的对应关系明显是不够用的,这时候就用两个字节对应一个文字,2**16=65536.
- UTF-8:英文字符明明可以通过一个字节存储,Unicode却需要2个字节来存储,对于存储比较小的计算机来说,是浪费很多不必要占用的空间,这个时候就出现utf-8。那么什么是utf-8呢?简单来说就是可变长度编码格式,英文字符用ASCII码来存,而中文呢,就用utf-8来存,这个时候中文就不是两个字节存储,而是三个字节来存。
而python编程有个要注意的问题,当python90年代还没有出现Unicode,使用时需要手动指定Unicode格式。
# 指定存储格式为Unicode
[kiosk@foundation0 ~]$ python
Python 2.7.5 (default, Aug 2 2016, 04:20:16)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> a = 'westos'
>>> type(a)
<type 'str'>
>>> b = u'westos'
>>> type(b)
<type 'unicode'>
字符的编码与解码
- 当存储数据到硬盘,需要考虑到节省空间的问题,所以采用utf-8格式进行存储;
- 当将数据读入内存时,统一一个编码格式便于操作,采用unicode编码格式;
- 因此字符的编码与解码一定要熟练操作。
# 定义一变量,编码格式为unicode
>>> name_unicode = u'粉条'
>>> type(name_unicode)
<type 'unicode'>
# 字符的编码,从unicode到utf-8格式
>>> name_utf8 = name_unicode.encode('utf-8')
>>> type(name_utf8)
<type 'str'>
# 字符的解码操作,从utf-8解码到unicode编码格式
>>> name_to_unicode = name_utf8.decode('utf-8')
>>> type(name_to_unicode)
<type 'unicode'>