【简介】
Python(蟒蛇 )是一种动态解释型的编程语言。Python 可以在 Windows、UNIX、MAC 等多种操作系统上使用,也可以在 Java、.NET 开发平台上使用。
【特点】
1 Python 使用 C 语言 开发,但是 Python 不再有 C 语言 中的指针等复杂的数据类型。
2 Python 具有很强的面向对象特性,而且简化了面向对象的实现。它消除了保护类型、抽象类、接口等面向对象的元素。
3 Python 代码块使用空格或制表符缩进的方式分隔代码。
4 Python 仅有 31 个保留字,而且没有分号、begin、end 等标记。
5 Python 是强类型语言,变量创建后会对应一种数据类型,出现在统一表达式中的不同类型的变量需要做类型转换。

Python(蟒蛇)编程 十分钟 入门
python book
【搭建开发环境】
1 可以到 www.python.org 下载安装包,然后通过 configure、make、make install 进行安装。
2 也可以到 www.activestate.com 去下载 ActivePython 组件包。(ActivePython 是对 Python 核心和常用模块的二进制包装,它是 ActiveState 公司发布的 Python 开发环境。ActivePython 使得 Python 的安装更加容易,并且可以应用在各种操作系统上。ActivePython 包含了一些常用的 Python 扩展,以及 Windows 环境的编程接口)。对 ActivePython 来说,如果你是 windows 用户,下载 msi 包安装即可;如果你是 Unix 用户,下载 tar.gz 包直接解压即可。
3 Python 的 IDE,包括 PythonWin、Eclipse+PyDev 插件、Komodo、EditPlus
【版本】
python2 与 python3 是目前主要的两个版本。
如下两种情况下,建议使用 python2:
1 你无法完全控制你即将部署的环境时;
2 你需要使用一些特定的第三方包或扩展时;
python3 是官方推荐的且是未来全力支持的版本,目前很多功能提升仅在 python3 版本上进行。
【hello world】
1 创建 hello.py
2 编写程序:
if __name__ == '__main__': print"hello word"
3 运行程序:
python ./hello.py
【注释】
1 无论是行注释还是段注释,均以 #加一个空格来注释。
2 如果需要在代码中使用中文注释,必须在 python 文件的最前面加上如下注释说明:
# -* - coding: UTF-8 -* -
3 如下注释用于指定解释器
#! /usr/bin/python
【文件类型】
1 Python 的文件类型分为 3 种,即源代码、字节代码和优化代码。这些都可以直接运行,不需要进行编译或连接。
2 源代码以.py 为扩展名,由 python 来负责解释;
3 源文件经过编译后生成扩展名为.pyc 的文件,即编译过的字节文件。这种文件不能使用文本编辑器修改。pyc 文件是和平台无关的,可以在大部分操作系统上运行。如下语句可以用来产生 pyc 文件:
importpy_compilepy_compile.compile(‘hello.py’)
4 经过优化的源文件会以.pyo 为后缀,即优化代码。它也不能直接用文本编辑器修改,如下命令可用来生成 pyo 文件:
python -O -m py_complie hello.py
【变量】
1 python 中的变量不需要声明,变量的赋值操作即使变量声明和定义的过程。
2 python 中一次新的赋值,将创建一个新的变量。即使变量的名称相同,变量的标识并不相同。用 id()函数可以获取变量标识:
x = 1printid(x)x = 2printid(x)
3 如果变量没有赋值,则 python 认为该变量不存在
4 在函数之外定义的变量都可以称为全局变量。全局变量可以被文件内部的任何函数和外部文件访问。
5 全局变量建议在文件的开头定义。
6 也可以把全局变量放到一个专门的文件中,然后通过 import 来引用:
gl.py 文件中内容如下:
_a = 1_b = 2
use_global.py 中引用全局变量:
importgldef fun(): printgl._a printgl._bfun()
【常量】
python 中没有提供定义常量的保留字。可以自己定义一个常量类来实现常量的功能。
class _const: class ConstError(TypeError): passdef__setattr__(self,name,vlaue): ifself.__dict__.has_key(name): raiseself.ConstError,“Can’t rebind const(%s)”%name self.__dict__[name]=valueimportsyssys.modules[__name__]=_const()
【数据类型】
1 python 的数字类型分为整型、长整型、浮点型、布尔型、复数类型。
2 python 没有字符类型
3 python 内部没有普通类型,任何类型都是对象。
4 如果需要查看变量的类型,可以使用 type 类,该类可以返回变量的类型或创建一个新的类型。
5 python 有 3 种表示字符串类型的方式,即单引号、双引号、三引号。单引号和双引号的作用是相同的。python 程序员更喜欢用单引号,C/Java 程序员则习惯使用双引号表示字符串。三引号中可以输入单引号、双引号或换行等字符。
【运算符和表达式】
1 python 不支持自增运算符和自减运算符。例如 i ++/i–是错误的,但 i += 1 是可以的。
2 1/ 2 在 python2.5 之前会等于 0.5,在 python2.5 之后会等于 0。
3 不等于为!= 或<>
4 等于用 == 表示
5 逻辑表达式中 and 表示逻辑与,or 表示逻辑或,not 表示逻辑非
【控制语句】
1 条件语句:
if(表达式) : 语句 1else : 语句 2
2 条件语句:
if(表达式) : 语句 1elif(表达式) : 语句 2…elif(表达式) : 语句 nelse : 语句 m
3 条件嵌套:
if(表达式 1) : if(表达式 2) : 语句 1elif(表达式 3) : 语句 2 … else: 语句 3elif(表达式 n) : …else : …
4 python 本身没有 switch 语句。
5 循环语句:
while(表达式) : …else : …
6 循环语句:
for 变量 in 集合 : …else : …
7 python 不支持类似 c 的 for(i=0;i<5;i++)这样的循环语句,但可以借助 range 模拟:
for x inrange(0,5,2): print x
【数组相关】
1 元组(tuple):python 中一种内置的数据结构。元组由不同的元素组成,每个元素可以存储不同类型的数据,如字符串、数字甚至元素。元组是写保护的,即元组创建之后不能再修改。元组往往代表一行数据,而元组中的元素代表不同的数据项。可以把元组看做不可修改的数组。创建元组示例如下:
tuple_name=(“apple”,”banana”,”grape”,”orange”)
2 列表(list):列表和元组相似,也由一组元素组成,列表可以实现添加、删除和查找操作,元素的值可以被修改。列表是传统意义上的数组。列表创建示例如下:
list=[“apple”,”banana”,”grage”,”orange”]
可以使用 append 方法来在尾部追加元素,使用 remove 来删除元素。
3 字典(dictionary):由键 - 值对组成的集合,字典中的值通过键来引用。键和值之间用冒号隔开,键 - 值对之间用逗号隔开,并且被包含在一对花括号中。创建示例如下:
dict={“a”:”apple”,“b”:”banana”,“g”:”grage”,“o”:”orange”}
4 序列:序列是具有索引和切片能力的集合。元组、列表和字符串都属于序列。
【函数相关】
1 python 程序由包(package)、模块(module)和函数组成。包是由一系列模块组成的集合。模块是处理某一类问题的函数和类的集合。
2 包就是一个完成特定任务的工具箱。
3 包必须含有一个__init__.py 文件,它用于标识当前文件夹是一个包。
4 python 的程序是由一个个模块组成的。模块把一组相关的函数或代码组织到一个文件中,一个文件即是一个模块。模块由代码、函数和类组成。导入模块使用 import 语句。
5 包的作用是实现程序的重用。
6 函数是一段可以重复多次调用的代码,函数定义示例如下:
def arithmetic(x,y,operator): result={“+”:x+y,“-“:x-y,“*”:x*y,“/”:x/y}
7 函数返回值可以用 return 来控制。
【字符串相关】
1 格式化输出:
format=”%s%d”%(str1,num)print format
2 用 + 进行字符串的合并:
str1=”hello”str2=”world”result=str1+str2
3 字符串截取可以通过索引 / 切片,也可以通过 split 函数。
4 通过切片截取字符串:
word=”world”print word[0:3]
5 python 使用 == 和!= 来进行字符串比较。如果比较的两个变量的类型不相同,那么结果必然为不同。
【文件处理】
1 简单处理文件:
context=”hello,world”f=file(“hello.txt”,’w’)f.write(context);f.close()
2 读取文件可以使用 readline()函数、readlines()函数和 read 函数。
3 写入文件可以使用 write()、writelines()函数
【对象和类】
1 python 用 class 保留字来定义一个类,类名的首字符要大写。当程序员需要创建的类型不能用简单类型来表示时,就需要定义类,然后利用定义的类创建对象。定义类示例:
class Fruit: def grow(self): print“Fruit grow”
2 当一个对象被创建后,包含了三方面的特性,即对象的句柄、属性和方法。创建对象的方法:
fruit = Fruit()fruit.grow()
3 python 没有保护类型的修饰符
4 类的方法也分为公有方法和私有方法。私有函数不能被该类之外的函数调用,私有的方法也不能被外部的类或函数调用。
5 python 使用函数”staticmethod()“或”@ staticmethod“指令的方法把普通的函数转换为静态方法。静态方法相当于全局函数。
6 python 的构造函数名为__init__,析构函数名为__del__
7 继承的使用方法:
class Apple(Fruit): def …
【连接 mysql】
1 用 MySQLdb 模块操作 MySQL 数据库非常方便。示例代码如下:
importos, sysimport MySQLdbtry: conn MySQLdb.connect(host=’localhost’,user=’root’,passwd=’’,db=’address’exceptException,e: print e sys.exit()cursor=conn.cursor()sql=’insert into address(name, address) values(%s, %s)’value=((“zhangsan”,”haidian”),(“lisi”,”haidian”))try cursor.executemany(sql,values)exceptException, e: print esql=”select*from address”cursor.execute(sql)data=cursor.fetchall()if data for x in data: print x[0],x[1]cursor.close()conn.close()
From:Linux 大棚