老司机带你十分钟入门Python!

Python是一种动态解释型的编程语言。Python可以在Windows、UNIX、MAC等多种操作系统上使用,也可以在Java、.NET开发平台上使用。

1、 特点

1)Python使用C语言开发,但是Python不再有C语言中的指针等复杂的数据类型。

2)Python具有很强的面向对象特性,而且简化了面向对象的实现。它消除了保护类型、抽象类、接口等面向对象的元素。

3)Python代码块使用空格或制表符缩进的方式分隔代码。

4)Python仅有31个保留字,而且没有分号、begin、end等标记。

5)Python是强类型语言,变量创建后会对应一种数据类型,出现在统一表达式中的不同类型的变量需要做类型转换。

2、 搭建开发环境

可以到www.python.org下载安装包,然后通过configure、make、make install进行安装。

也可以到www.activestate.com去下载ActivePython组件包。(ActivePython是对Python核心和常用模块的二进制包装,它是ActiveState公司发布的Python开发环境。ActivePython使得Python的安装更加容易,并且可以应用在各种操作系统上。ActivePython包含了一些常用的Python扩展,以及Windows环境的编程接口)。对ActivePython来说,如果你是windows用户,下载msi包安装即可;如果你是Unix用户,下载tar.gz包直接解压即可。

Python的IDE,包括PythonWin、Eclipse+PyDev插件、Komodo、EditPlus

3、 版本

python2与python3是目前主要的两个版本。

如下两种情况下,建议使用python2:

1 你无法完全控制你即将部署的环境时;

2 你需要使用一些特定的第三方包或扩展时;

python3是官方推荐的且是未来全力支持的版本,目前很多功能提升仅在python3版本上进行。

4、 hello world

1)创建hello.py

2)编写程序:

if name == \'main\':

print "hello word"

3)运行程序:

python ./hello.py

5、 注释

1)无论是行注释还是段注释,均以#加一个空格来注释。

2)如果需要在代码中使用中文注释,必须在python文件的最前面加上如下注释说明:

-* - coding: UTF-8 -* -

3)如下注释用于指定解释器

#! /usr/bin/python

6、 文件类型

1)Python的文件类型分为3种,即源代码、字节代码和优化代码。这些都可以直接运行,不需要进行编译或连接。

2)源代码以.py为扩展名,由python来负责解释;

3)源文件经过编译后生成扩展名为.pyc的文件,即编译过的字节文件。这种文件不能使用文本编辑器修改。pyc文件是和平台无关的,可以在大部分操作系统上运行。如下语句可以用来产生pyc文件:

import py_compile

py_compile.compile('hello.py')

4)经过优化的源文件会以.pyo为后缀,即优化代码。它也不能直接用文本编辑器修改,如下命令可用来生成pyo文件:

python -O -m py_complie hello.py

7、 变量

1)python中的变量不需要声明,变量的赋值操作即是变量声明和定义的过程。

2)python中一次新的赋值,将创建一个新的变量。即是变量的名称相同,变量的标识并不相同。用id()函数可以获取变量标识:

x = 1print id(x)

x = 2print id(x)

3)如果变量没有赋值,则python认为该变量不存在

4)在函数之外定义的变量都可以称为全局变量。全局变量可以被文件内部的任何函数和外部文件访问。

5)全局变量建议在文件的开头定义。

6)也可以把全局变量放到一个专门的文件中,然后通过import来引用:

gl.py文件中内容如下:

_a = 1

_b = 2

use_global.py中引用全局变量:

import gldef fun():

print gl._a

print gl._b

fun()

8、 常量

python中没有提供定义常量的保留字。可以自己定义一个常量类来实现常量的功能。

class _const:

class ConstError(TypeError): pass

def setattr(self,name,vlaue):

if self.dict.has_key(name):

raise self.ConstError, "Can't rebind const(%s)"%name

self.dictname=valueimport sys

sys.modules__name__=_const()

9、 数据类型

python的数字类型分为整型、长整型、浮点型、布尔型、复数类型。

python没有字符类型

python内部没有普通类型,任何类型都是对象。

如果需要查看变量的类型,可以使用type类,该类可以返回变量的类型或创建一个新的类型。

python有3种表示字符串类型的方式,即单引号、双引号、三引号。单引号和双引号的作用是相同的。python程序员更喜欢用单引号,C/Java程序员则习惯使用双引号表示字符串。三引号中可以输入单引号、双引号或换行等字符。

10、 运算符和表达式

python不支持自增运算符和自减运算符。例如i++/i-是错误的,但i+=1是可以的。

1/2在python2.5之前会等于0.5,在python2.5之后会等于0。

不等于为!=或<>

等于用==表示

逻辑表达式中and表示逻辑与,or表示逻辑或,not表示逻辑非

11、 控制语句

1)条件语句:

if (表达式) :

语句1else :

语句2

2)条件语句:

if (表达式) :

语句1elif (表达式) :

语句2...elif (表达式) :

语句nelse :

语句m

3)条件嵌套:

if (表达式1) :

if (表达式2) :

语句1

elif (表达式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 in range(0,5,2):

print x

12、 数组相关

元组(tuple):python中一种内置的数据结构。元组由不同的元素组成,每个元素可以存储不同类型的数据,如字符串、数字甚至元素。元组是写保护的,即元组创建之后不能再修改。元组往往代表一行数据,而元组中的元素代表不同的数据项。可以把元组看做不可修改的数组。创建元组示例如下:

tuple_name=("apple","banana","grape","orange")

列表(list):列表和元组相似,也由一组元素组成,列表可以实现添加、删除和查找操作,元素的值可以被修改。列表是传统意义上的数组。列表创建示例如下:

list="apple","banana","grage","orange"

可以使用append方法来在尾部追加元素,使用remove来删除元素。

字典(dictionary):由键-值对组成的集合,字典中的值通过键来引用。键和值之间用冒号隔开,键-值对之间用逗号隔开,并且被包含在一对花括号中。创建示例如下:

dict={"a":"apple", "b":"banana", "g":"grage", "o":"orange"}

序列:序列是具有索引和切片能力的集合。元组、列表和字符串都属于序列。

13、 函数相关

python程序由包(package)、模块(module)和函数组成。包是由一系列模块组成的集合。模块是处理某一类问题的函数和类的集合。

包就是一个完成特定任务的工具箱。

包必须含有一个__init__.py文件,它用于标识当前文件夹是一个包。

python的程序是由一个个模块组成的。模块把一组相关的函数或代码组织到一个文件中,一个文件即是一个模块。模块由代码、函数和类组成。导入模块使用import语句。

包的作用是实现程序的重用。

函数是一段可以重复多次调用的代码,函数定义示例如下:

def arithmetic(x,y,operator):

result={

"+":x+y,

"-":x-y,

"*":x*y,

"/":x/y

}

函数返回值可以用return来控制。

14、 字符串相关

格式化输出:

format="%s%d" % (str1,num)print format

用+进行字符串的合并:

str1="hello"

str2="world"

result=str1+str2

字符串截取可以通过索引/切片,也可以通过split函数。

通过切片截取字符串:

word="world"print word0:3

python使用==和!=来进行字符串比较。如果比较的两个变量的类型不相同,那么结果必然为不同。

15、 文件处理

简单处理文件:

context="hello,world"

f=file("hello.txt",'w')

f.write(context);

f.close()

读取文件可以使用readline()函数、readlines()函数和read函数。

写入文件可以使用write()、writelines()函数

16、 对象和类

python用class保留字来定义一个类,类名的首字符要大写。当程序员需要创建的类型不能用简单类型来表示时,就需要定义类,然后利用定义的类创建对象。定义类示例:

class Fruit:

def grow(self):

print "Fruit grow"

当一个对象被创建后,包含了三方面的特性,即对象的句柄、属性和方法。创建对象的方法:

fruit = Fruit()

fruit.grow()

python没有保护类型的修饰符

类的方法也分为公有方法和私有方法。私有函数不能被该类之外的函数调用,私有的方法也不能被外部的类或函数调用。

python使用函数"staticmethod()"或"@ staticmethod"指令的方法把普通的函数转换为静态方法。静态方法相当于全局函数。

python的构造函数名为__init__,析构函数名为__del__

继承的使用方法:

class Apple(Fruit):

def ...

17、 连接mysql

用MySQLdb模块操作MySQL数据库非常方便。示例代码如下:

import os, sysimport MySQLdbtry:

conn MySQLdb.connect(host='localhost',user='root',passwd='',db='address'except Exception,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)except Exception, e:

print e

sql="select * from address"

cursor.execute(sql)

data=cursor.fetchall()if data

for x in data:

print x0,x1

cursor.close()

conn.close()

文章来源:网络 版权归原作者所有

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰,我们将立即处理

相关推荐
zhangzeyuaaa1 小时前
深入 Ruby:return 退出规则完全指南
开发语言·ruby
YEGE学AI算法2 小时前
Python实现Log-Mel Fbank:分帧、加窗、FFT与Mel滤波器组
python·语音识别·fbank·log-mel·音频特征
shaibdoio2 小时前
AI主动获客的意图识别工程实现:从规则匹配到模型微调
java·开发语言·人工智能·长沙瞬维ai
甜到心里的蛋糕2 小时前
Playwright 无头浏览器自动发布 CSDN 图文草稿的实践(持久化 profile + 图床直传)
运维·python·playwright·爬虫自动化·博客运营
jason.zeng@15022072 小时前
(六)Prompt 优化
python·ai·langchain·prompt·ai编程·llama
CoderYanger3 小时前
一轮复习——F.动态规划模型总结(入门篇)
java·开发语言·数据结构·算法·leetcode·职场和发展·动态规划
全栈练习生3 小时前
大模型推理全链路
python·ai
Frank_refuel3 小时前
【C++】智能指针
开发语言·c++
泡海椒3 小时前
JQuick-Excel VALIDATION 实战:用作用范围约束 Excel 导入校验
开发语言·python·excel