首页 > 代码库 > python学习笔记(一) - 基础

python学习笔记(一) - 基础

一. 第一个小程序:

python语法比较简单,采用缩进的方式,如下所示:

a = 100
if a >= 0:
    print a
else:
    print -a
使用#进行注释,其他的每一行都是一个语句,当语句以冒号“:”结尾时,缩进的语句视为代码块。

按照约定俗成,一般使用Tab键缩进,或按四个空格。

注意:python程序是大小写敏感的。


二. 数据类型和变量

(1) 数据类型:

a. 整数:

python可以处理任意大小的整数

可以使用十六进制表示整数:0x前缀和0-9,a-f。如0xff00,0xa5b4c3d2


b. 浮点数:

浮点数就是小数,按照科学计数法表示时,一个浮点数的小数点位置是可变的。比如:1.23x109和12.3x108是相等的

对于很大或很小的浮点数,就需要用科学计数法表示,把10用e替代,1.23x109就是1.23e9或者12.3e8


c. 字符串:

python中字符串用单引号 ‘ ’ 或双引号“ ” 括起来。

如果单引号 ’ 本身也是一个字符,那就可以用双引号“ ” 括起来,如:print “I‘m ok”

如果字符串内部既包含单引号 ‘ 又包含双引号“ ,那就用转义字符 \ 来标识,如:print "I\‘m \"ok\""

右斜杠 \ 可以转义很多字符,比如 \n 表示换行, \t 表示制表符,\\ 表示 \ 

如果字符串里面有很多字符都需要转义,那就需要加很多 \ ,为了简化,python还允许用r‘ ‘表示‘ ’内部的字符串默认不转义。如:print r‘\\\t\\‘

>>> print '\\\t\\'
\       >>> print r'\\\t\\'
\\\t\\
如果字符串内部有很多换行,用\n写在一行里不好阅读,为了简化,python允许用‘‘‘  ‘‘‘ 的格式表示多行内容,如:

print '''line1
line2
line3'''

d. 布尔值:

一个布尔值只有True、False两种值,要么是True,要么是False,请注意大小写

在Python中,可以直接用True、False表示布尔值

>>> 3 > 2
True
>>> 3 > 5
False
布尔值可以用and、or、not运算

>>> True and True
True
>>> True and False
False
>>> False and False
False

>>> True or True
True
>>> True or False
True
>>> False or False
False

>>> not True
False
>>> not False
True


e. 空值

空值是python里一个特殊的值,用None表示。None不能理解为0,因为0时有意义的,而None是一个特殊的空值。


(2) 变量

变量名必须是字母、数字、和下划线的组合,且不能以数字开头。

可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量,例如:

a = 123 # a是整数
a = ‘ABC’ # a变为字符串
这种变量本身类型不固定的语言成为动态语言,和JS很像,而Java是静态语言,因为它在定义变量时必须指定变量类型,

如:int a = 123;


(3) 常量

所谓常量就是不能变得变量,在python中,通常常量全部大写,这个和Java一样
如 PI = 3.1415926,但事实上PI仍然是一个变量,Python根本没有任何机制保证PI不会被改变。


三. 字符串和编码

ASCII编码:只有127个字母被编码到计算机中,即大小写英文字母、数字和一些符号,只使用一个字节保存。

Unicode编码:把所有语言都统一到一套编码里,这样就不会再有乱码问题了,一般用两个字节保存一个字符。

但是如果所有的语言都统一成Unicode编码,乱码问题就此消失了,但是,如果我们写的文本基本上都是英文的话,

用Unicode编码会比ASCII编码多出一倍的存储空间,在存储和传输上就不划算了。


四. 使用list和tuple


五. 条件判断和循环


六. 使用dict和set


原文请参考:廖雪峰

python学习笔记(一) - 基础