Python语言十分钟快速入门
Python(蟒蛇)是一种动态解释型的编程语言。Python可以在Windows、UNIX、MAC等多种操作系统上使用,也可以在Java、.NET开发平台上使用。
【简介】
Python(蟒蛇)是一种动态解释型的编程语言。Python可以在Windows、UNIX、MAC等多种操作系统上使用,也可以在Java、.NET开发平台上使用。
python logo
【特点】
1 Python使用C语言开发,但是Python不再有C语言中的指针等复杂的数据类型。
2 Python具有很强的面向对象特性,而且简化了面向对象的实现。它消除了保护类型、抽象类、接口等面向对象的元素。
3 Python代码块使用空格或制表符缩进的方式分隔代码。
4 Python仅有31个保留字,而且没有分号、begin、end等标记。
5 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文件:
- import py_compile
- py_compile.compile(‘hello.py’)
4 经过优化的源文件会以.pyo为后缀,即优化代码。它也不能直接用文本编辑器修改,如下命令可用来生成pyo文件:
- python -O -m py_complie hello.py
【变量】
1 python中的变量不需要声明,变量的赋值操作即使变量声明和定义的过程。
2 python中一次新的赋值,将创建一个新的变量。即使变量的名称相同,变量的标识并不相同。用id()函数可以获取变量标识:
- x = 1
- print id(x)
- x = 2
- print id(x)
3 如果变量没有赋值,则python认为该变量不存在
4 在函数之外定义的变量都可以称为全局变量。全局变量可以被文件内部的任何函数和外部文件访问。
5 全局变量建议在文件的开头定义。
6 也可以把全局变量放到一个专门的文件中,然后通过import来引用:
gl.py文件中内容如下:
- _a = 1
- _b = 2
use_global.py中引用全局变量:
- import gl
- def fun():
- print gl._a
- print gl._b
- fun()
【常量】
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.__dict__[name]=value
- import sys
- sys.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 (表达式) :
- 语句1
- else :
- 语句2
2 条件语句:
- if (表达式) :
- 语句1
- elif (表达式) :
- 语句2
- …
- elif (表达式) :
- 语句n
- else :
- 语句m
3 条件嵌套:
- if (表达式1) :
- if (表达式2) :
- 语句1
- elif (表达式3) :
- 语句2
- …
- else:
- 语句3
- elif (表达式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
【数组相关】
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数据库非常方便。示例代码如下:
- import os, sys
- import MySQLdb
- try:
- 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 x[0],x[1]
- cursor.close()
- conn.close()
Python语言十分钟快速入门的更多相关文章
- 十分钟快速入门 Python,看完即会,不用收藏!
本文以 Eric Matthes 的<Python编程:从入门到实践>为基础,以有一定其他语言经验的程序员视角,对书中内容提炼总结,化繁为简,将这本书的精髓融合成一篇10分钟能读完的文章. ...
- 十分钟快速入门 Python
本文以 Eric Matthes 的<Python编程:从入门到实践>为基础,以有一定其他语言经验的程序员视角,对书中内容提炼总结,化繁为简,将这本书的精髓融合成一篇10分钟能读完的文章. ...
- python视频教程:十分钟快速入门python
想要学习python这门语言,却始终找不到一个全面的Python视频教程,倘若你是真心想学好一门语言,小编建议你亲自动手实践的.下面来看看入门python的学习教程. Python的语言特性 Pyth ...
- Redis 十分钟快速入门
本教程是一个快速入门教程,所以Redis的命令只是简单介绍了几个常用的,如果有其他需求请求官网查看API 使用. 1. Redis简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的ke ...
- HDFS+MapReduce+Hive+HBase十分钟快速入门
1. 前言 本文的目的是让一个从未接触Hadoop的人,在很短的时间内快速上手,掌握编译.安装和简单的使用. 2. Hadoop家族 截止2009-8-19日,整个Hadoop家族由以 ...
- Lua语言15分钟快速入门
转载自: https://blog.csdn.net/qq_15437667/article/details/75042526 -- 单行注释 --[[ [多行注释] --]] ---------- ...
- 转: Lua 语言 15 分钟快速入门
看点: 1. 以很特殊的方式工,把Lua的语法全部输出一段,很容易让人记住..不错 转: http://blog.jobbole.com/70480/
- 程序员带你十天快速入门Python,玩转电脑软件开发(四)
本系列文章立志于从一个已经习得一门编程语言的基础之上,全面介绍Python的相关开发过程和相关经验总结.本篇文章主要是基于上一篇的程序员带你十天快速入门Python,玩转电脑软件开发(三)的基础之上, ...
- 程序员带你十天快速入门Python,玩转电脑软件开发(三)
声明:本次教程主要适用于已经习得一门编程语言的程序员.想要学习第二门语言.有梦想,立志做全栈攻城狮的你 . 如果是小白,也可以学习本教程.不过可能有些困难.如有问题在文章下方进行讨论.或者添加QQ群5 ...
随机推荐
- C feof
功能:检测流上的文件结束符.如果文件结束,则返回非0值,否则返回0,文件结束符只能被clearerr()清除. 正确的应该是feof返回0表示文件没有结束,返回1,表示结束.feof实际观察的是上次读 ...
- asp.net identity 3.0.0 在MVC下的基本使用(一)
注册时信箱转为用户名. 本人习惯使用用户名做注册用户,因为不管是什么终端起码都能少输入几个字符,可以提高用户体验. 这里需要更改控制器,模型和视图 1.打开Controllers目录下的Account ...
- java并发容器类
本文主要介绍java并发容器相关实现类,collections节点下接口方法介绍. Queue Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是Blocking ...
- Thinking in Java——笔记(18)
I/O The original byte-oriented library was supplemented with char-oriented, Unicode-based I/O classe ...
- eclipse如何配置tomcat运行web项目时省略项目名称
三个关键点,如图所示
- linux实践之程序破解
linux实践之程序破解 这次的实践是文件破解,让我们从login可执行文件开始吧! 首先我们执行一下这个可执行程序 ①我们希望在不知道密码的情况下,能够登陆进去.且无论密码是什么,都是提示“on y ...
- 枚举Enum
#region 根据枚举名称获取值或反之 /// <summary> /// 根据枚举的名称,得到该枚中该名称对应的值 /// </summ ...
- JMeter学习-028-JMeter默认jmx脚本分发目录(路径)定制
我们在分布式执行参数化脚本时,为尽可能多的利用Slave资源,尽可能将参数文件配置为相对路径,以更好的去适配Slave环境.与此同时,每台Slave的服务jmeter -s 启动的路径可能不尽相同,同 ...
- 高级java必会系列二:多线程经常使用的3个关键字:synchronized、ReentrantLock、volatile
系列一讲解了多线程,本章讲解多线程开发中经常使用到的3个关键字synchronized.ReentrantLock.volatile. 一.synchronized 互斥锁,即操作互斥,并发线程过来, ...
- word嵌入图片部分被段落遮挡
这是因为图片所在段落的行距被设置为固定行距造成的 解决办法: 把图片所在段落的行距改为单倍行距