Python基础详解-创新互联
现阶段,掌握一门开发语言已经成为高级运维工程师的必备技能。学习并掌握一门程序设计语言,可以使我们充分理解企业的业务处理流程,帮助软件开发人员调试,优化程序,提升应用系统的运行性能。
成都创新互联网站建设公司是一家服务多年做网站建设策划设计制作的公司,为广大用户提供了成都做网站、成都网站设计,成都网站设计,广告投放,成都做网站选成都创新互联,贴合企业需求,高性价比,满足客户不同层次的需求一站式服务欢迎致电。博文大纲:
一、Python概述
1.Python的语言特点
2.Python语言的应用场景
二、Python的版本与安装
1.Python绘图
2.Python的变量
三、Python常用的数据类型
1.数字
2.字符串
3.列表
4.元组
5.字典
一、Python概述
1.Python的语言特点
Python是一种动态解释型的编程语言。使用C语言开发,但是Python不再有C语言中的指针等复杂数据类型。Python的简洁性使得软件的代码大幅度地建撒谎哦,开发任务进一步简化。程序员关注的重点不再是语法特性,而是程序所要实现的任务。
Python语言的主要特点:
(1)简单:Python语言的关键字比较少,它没有分号,代码使用空格或制表键缩进的方式来进行分隔,简化了循环语句。Python的代码简洁、短小、易于阅读;
(2)易学:Python及其容易上手,因为Python有极其简单的说明文档;
(3)免费、开源:使用者可以自由地发布这个的软件的复制,阅读它的源代码。对它进行改动,把它的一部分用于新的自由软件中;
(4)高层语言:无需考虑诸如如何管理内存一类的底层细节;
(5)可移植性:Python已经被移植在许多平台上(经过改动使它能够工作在不同的平台上),这些平台包括Linux、Windows等;
(6)解释性:Python语言写的程序不需要编译成二进制代码,可以直接从源代码运行程序;
在计算机内部,Python解释器把袁大妈转换成成为字节码的中间形式,然后再把它编译成计算机使用的机器语言并运行。
(7)面向对象:Python既支持面向过程的编程也支持面向对象的编程;
(8)可扩展性:Python是采用C语言开发的,因此可以使用C语言廓镇Python;
(9)可嵌入性:可以吧Python嵌入C/C++程序,从而使程序面向用户提供脚本功能;
(10)丰富的库:Python标准库很庞大,可以帮助处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP‘电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、T可其他与系统有关的操作;
2.Python语言的应用场景
Python之所以成为流行的编程语言,与他广泛的应用场景是分不开的。
(1)系统编程:能方便进行系统维护和管理,是很多Linux系统管理员理想的编程工具;
(2)图形处理:有PIL、Tkinter等图形库支持,能方便进行图形处理;
(3)数学处理:NumPy扩展提供大量与标准数学库的接口;
(4)文本处理:Python提供的re模块能支持正则表达式,还提供SGML、XML分析模块;
(5)数据库编程:Python可以操作SQL server、MYSQL、Oracle等数据库;
(6)网络编程:提供丰富的模块,支持sockets编程,能方便快速地开发分布式应用程序;
(7)Web编程:可以作为Web应用程序的开发语言;
(8)多媒体应用:Python的PyOpenGL模块封装了“OpenGL应用程序编程接口”,能进行二维和三维图像处理。
二、Python的版本与安装
目前Python有版本2和版本3这两个版本,它们之间并不兼容,语法存在差别。许多Python初学者比较纠结,其实无所谓,就看个人兴趣爱好。版本之间有差异,也只是语法上有一些区别。总体思路没有任何变化。本次博文使用Python 2.7.13版本在Windows系统进行操作。
Python的安装比较简单,开发工具IDLE也会被同时安装。用户可以自行在https://www.python.org/ python官网进行下载,也可以使用本人提供的Python 2.7.13版本软件包
Python的安装方法相对简单,IDLE工具图形界面可以根据自身的需要进行需要。这里就不介绍了。
1.Python绘图
绘图除了Python语言,别的语言即使可以实现,也是相当麻烦,使用Python就可以很轻松的使用。
(1)安装绘图模块
本人提供的软件包已经包含了绘图所需的模块。双击安装即可!如图:
然后打开CMD命令提示符,执行以下命令:
C:\Users\Administrator>cd C:\six-1.7.3\six-1.7.3
//首先进入six-1.7.3软件包解压之后的目录中
C:\six-1.7.3\six-1.7.3>c:\python27/python setup.py install
//使用Python命令进行安装
上述安装完成之后,就可以使用matplotlib模块进行绘图操作了。
上述在执行python命令时,使用的是绝对路径,当然也可加入系统环境变量中。这里就不多说了!
(2)Python绘图
打开IDLE工具:
输入以下代码
import turtle as tt
from random import randint
tt.TurtleScreen._RUNNING = True
tt.speed(0) # 绘图速度为最快
tt.bgcolor("black") # 背景色为黑色
tt.setpos(-25, 25) # 改变初始位置,这可以让图案居中
tt.colormode(255) # 颜色模式为真彩色
cnt = 0
while cnt < 500:
r = randint(0, 255)
g = randint(0, 255)
b = randint(0, 255)
tt.pencolor(r, g, b) # 画笔颜色每次随机
tt.forward(50 + cnt)
tt.right(91)
cnt += 1
tt.done()
即可出现:
动态的出现这种效果图,这就是Python的强大之处!
2.Python的变量
变量是计算机内存中的一块区域,变量可以存储任何指,而且值可以改变;变量名称可以由字母、数字和下划线组成。需要注意的是,不能使用Python的关键字,英文大小写字母敏感,第一个字符必须是字母或下划线,不可以是数字。比如:
>>> lzj_1=1
>>> print(lzj_1)
1
>>> _lzj2=2
>>> print (_lzj2)
2 //正确的赋值方法
>>> #a=1
>>> 3k=1
>>> print=1 //错误的赋值方法
Python中的变量不需要声明,变量的赋值操作即是变量声明和定义的过程,也可以同时给多个变量赋值。比如:
>>> a,b,c=1,2,3
>>> print a,b,c
1 2 3
>>> print a
1
三、Python常用的数据类型
Python内置的数据类型有数字、字符串、元祖、列表和字典。
1.数字
数字类型包括整数、浮点型、布尔型等,声明时由Python内置的基本数据类型来管理变量,在程序的后台实现数值与类型的关联,以及转换等操作。
(1)整数型和浮点型
>>> aaa=123
>>> print (id(aaa))
13568080
>>> print aaa
123
>>> aaa=1.23
>>> print (id(aaa))
13582176
>>> print aaa
1.23
//虽然变量名称一样,但是变量名对应的ID号不一致
//最后一次赋值的变量生效
(2)布尔型
布尔型用于逻辑运算,只有两个值True、False,表示真和假。
>>> f=True
>>> print f
True
>>> if(f):
print 1
1
代码定义了变量“f=True”,if是判断语句,为真则执行“print”语句,最后输出的是1,说明语句执行成功。
使用比较运算符返回的结果就是布尔值。比如:
>>> 2>3
False
>>> 2>1
True
(3)Python运算符
Python中使用的算术运算符和数学运算中使用的符号基本相同,由+、-、*、/和小括号组成,运算顺序也是先乘除后加减,小括号优先。比如:
>>> x,y=10,2
>>> print x+y,x*y,x/y
12 20 5
>>> print 5 + 2 * 10
25
>>> print (5 + 2) * 3
21
>>> print 5 + 8 * 3 / 4
11
还可以实现两个算术运算符,分别是:“%”(取余运算)和“**”(求幂运算),比如:
>>> 8%5
3
>>> 2**3
8
注意:Python不支持自增运算符(++)和自减运算符(- -)。
2.字符串
Python中的字符串是一组包含数字、字母和符号的集合,作为一个整体使用。
(1)字符串使用
在Python中有三种表示字符串的方式:单引号、多引号、三引号。比如:
>>> name='北京'
>>> name1="天津"
>>> name2='''北京和
天津'''
>>> print name
北京
>>> print name1
天津
>>> print name2
北京和
天津
需要注意的是:单引号和双引号的作用是一样的,可以根据习惯使用,但定义多行文字时,必须使用三引号。
( 2)使用字符串注意事项
字符串的定义方式单引号、双引号、三引号大部分情况下作用都是一样的。但在特殊情况下使用也有所区别,比如:
(1)单引号、双引号、三引号都是成对出现的,如意单引号开头就要以单引号结尾, 不能混合使用表示字符串。比如:
>>> name="北京'
SyntaxError: EOL while scanning string literal
>>> name="北京''
SyntaxError: EOL while scanning string literal //这都是错误的写法
(2)如果字符串中单独出现单引号或双引号,可以使用另一种引号进行定义,比如:
>>> n="let's go!" //内容中单引号使用双引号定义
>>> print n
let's go!
>>> n='let"s go!' //内容中有双引号使用单引号定义
>>> print n
let"s go!
>>> n='''let's go! let"s go!''' //内容中单引号、双引号时使用三引号定义
>>> print n
let's go! let"s go!
(3)当字符串中出现单引号、双引号等特殊字符是,还可以使用转义字符定义。Python中的转义字符还是“\”,只要在特殊字符前面加上“\”,就可以原样输出,而不用去管定义字符使用的是单引号还是双引号。比如:
>>> n='let\' go!'
>>> print n
let' go!
>>> n="let\"s go!"
>>> print n
let"s go!
常用的转义字符,如图:
(3)字符串的其他用法
Python的字符串可以进行乘法的操作,可以用一个整数型数字和字符串进行相乘,比如:
>>> print 3*'a'
aaa
Python的字符串乘法非常实用,可以在写代码时带来很大的便利。比如:
>>> a=' '
>>> print a
>>> print "python"
python
>>> print a*2 + "python"
python
>>> print a*4 + "python"
python
定义了一个空格字符串变量a,在输出是使用字符串乘法决定输出的格式,很容易地实现了文字前面的空格,在其他语言中如果想要实现这种效果,代码要复杂得多,Python的简洁性体现得十分明显。
3.列表
列表是Python中非常重要的数据类型,通常作为函数的返回类型。由一组元素组成,列表可以实现添加、删除和查找操作,元素值可以被修改。
(1)列表的定义
列表是Python内置的一种数据结构,由中括号定义,元素以逗号分开。语法格式:
列表名 = [ 元素1,元素2,…… ]
(2)列表的取值
(1)列表中的数据是有序的,按定义时的顺序拍好,可以单独取出某一位置元素的数值,语法如下:
列表名 [ 索引位置 ]
如下:
>>> num=['001','002','003']
>>> print num[0]
001
>>> print num [1]
002
>>> print num [2]
003
定义了列表num,存储了3个字符串。取值时用列表名+中括号,中括号中的数字表示索引位置,需要注意位置是由0开始依次递增。
(2)可以获取列表制定范围的一组元素,语法如下:
列表名[起始位置:终止位置]
可以输出起始位置到终止位置前的元素,不包括终止位置。比如:
>>> print num [0:1]
['001']
>>> print num [0:2]
['001', '002']
>>> print num [0:3]
['001', '002', '003']
[0:1]表示由索引0开始,索引位置1之前的元素,所以只能取到第1个元素;
[0:2]可以取到索引2之前的元素,即列表中第1、2个元素;
[0:3]可以取到索引2之前的元素,即列表中第1、2、3个元素;
并不显示终止的值,比如[0:3],只显示0,1,2这三个数字。
(3)修改列表元素值
可以修改制定位置的列表元素值,语法如下:
列表名[索引位置]=值
比如:
>>> num=['001','002','003']
>>> num [0] = '004'
>>> print num
['004', '002', '003']
定义列表是,索引位置0的元素是001,修改它的值为004后,索引位置0元素变成了004。
(4)添加列表元素
(1)可以把一个元素添加到列表的最后,语法如下:
列表名.append[元素值]
比如:
>>> num=['001','002','003']
>>> print num
['001', '002', '003']
>>> num.append('004') //将004数值添加到列表的末尾
>>> print num
['001', '002', '003', '004']
(2)在列表指定位置前插入新的元素,语法如下:
列表名.insert(索引位置,元素值)
比如:
>>> num=['001','002','003']
>>> num.insert (1,'004') //将004数值插入到索引1的位置
>>> print num
['001', '004', '002', '003']
(5)删除列表元素
可以删除列表指定索引位置的元素,语法如下:
del 列表名[索引位置]
比如:
>>> num=['001','002','003']
>>> del num[1] //删除位于索引1的数据
>>> print num
['001', '003']
(6)查找列表元素
使用in关键字可以查找列表中是否存在指定的数值,语法如下:
元素值 in 列表名
返回的值是布尔类型False或True。
比如:
>>> num=['001','002','003']
>>> '001' in num
True
>>> '004' in num
False
(7)合并列表
多个列表可以使用“+”号进行合并,比如:
>>> num1=['001','002']
>>> num2=['003','004']
>>> numall=num1+num2
>>> print numall
['001', '002', '003', '004']
>>> numall=num2+num1
>>> print numall
['003', '004', '001', '002']
使用加号进行合并时,加号后面的列表元素会追加到前面列表的后面。
(8)重复列表
使用星号可以对列表进行重复操作,与单独字符串乘法操作相似,比如:
>>> num1=['001','002']
>>> num=num1*5
>>> print num
['001', '002', '001', '002', '001', '002', '001', '002', '001', '002']
(9)列表常见的问题
(1)索引越界是使用列表时经常犯的一个错误,如列表中有3个元素,因为索引位置是0开始计算的,所以大的索引值是2,如果索引值大于2,则表示索引是越界的,程序无法执行,比如:
>>> num1=['001','002']
>>> print num1[2]
Traceback (most recent call last):
File "", line 1, in
print num1[2]
IndexError: list index out of range
那么但当使用小于0的负数索引时,不会出现错误,因为Python列表的负数索引表示的是由列表的末尾进行反向的取值,也就是最后一个元素的位置也可以使用索引-1取值,以此类推。比如:
>>> num1=['001','002']
>>> print num1[-1]
002
(2)当获取列表指定范围的一组元素时,不存在列表索引越界的问题。比如:
>>> num1=['001','002']
>>> num=num1[1:5]
>>> print num
['002']
可以发现正常执行,并报错,只是将满足条件的值列出来而已!
(3)获取列表指定范围时可以同时使用正数和负数索引。比如:
>>> num=['001','002','003']
>>> print num[0:-1]
['001', '002']
一样的道理,也是不显示终止位置的值。
(4)列表元素也可以是列表。比如:
>>> num=[['001','002','003'],['001','002','003'],['001','002','003']]
>>> print num[0] //取列表的第0个标签的值
['001', '002', '003']
>>> print num[0][0] //取列表中第0个标签的第0个值
001
>>> print num [2][1]
002
4.元组
元祖和列表相似,也是Python的一种数据结构,由不同的元素组成,每个元素可以存储不同类型的数据,比如:字符串、数字、甚至元祖,但是元素是不可以被修改的,即元祖创建后不能进行任何的修改。元祖通常表示一行数据,而元组中的元素表示不同的数据。
(1)元组的创建
元组由关键字小括号定义,一旦创建后就不能修改元组的内容,语法如下:
元组名=(元素1,元素2……)
比如:
>>> num=('001','002','003') //定义元组
>>> num[0] = '004' //尝试修改元组的值时,会报错
Traceback (most recent call last):
File "", line 1, in
num[0] = '004'
TypeError: 'tuple' object does not support item assignment
元组与列表的区别,如图:
(2)元组的操作
元祖也可对其元素执行一系列的操作。
(1)元组具有不可变性,所以相对列表的操作要少,其中取值操作与列表的方式是完全相同的,如下:
>>> num=('001','002','003')
>>> print num[0] //进行查询
001
(2)元组不允许删除元组中的元素值,但是可以删除整个元组。语法:
del 元组名
比如:
>>> num=('001','002','003')
>>> del num[0] //试图删除元组中某一个元素时,会报错
Traceback (most recent call last):
File "", line 1, in
del num[0]
TypeError: 'tuple' object doesn't support item deletion
>>> print num
('001', '002', '003')
>>> del num //删除整个元组时,不会报错
>>> print num //再次进行查询时,编译器会报未定义变量的错误
Traceback (most recent call last):
File "", line 1, in
print num
NameError: name 'num' is not defined
(3)元组和列表可以做互相转换操作:
元组转换为列表的语法:
list(列表名)
比如:
>>> num=('001','002','003') //定义元组
>>> listnum=list(num) //将元组转换为列表
>>> print listnum
['001', '002', '003']
>>> listnum[0]='004' //修改列表的内容
>>> print listnum
['004', '002', '003']
>>> print type(num) //输出元组类型
>>> print type(listnum) //输出列表类型
列表转换为元组的语法如下:
tuple (列表名)
比如:
>>> num=['001','002','003'] //定义列表
>>> tuplenum=tuple(num) //将列表转换为元组
>>> print type(num) //输出列表类型
>>> print type(tuplenum) //输出元组类型
5.字典
字典是Python中重要的数据类型,字典是由”键-值“对组成的集合,字典中的值通过键来引用。
(1)字典的创建
字典的每个元素是由”键-值“对组成的,键值之间使用冒号进行分隔,键值对之间用逗号进行分隔,并且被包含在一对花括号中,键是唯一的,不能存在多个,且它的值是无序的,键可以是数字、字符串、元组,一版用字符串作为键。定义的语法如下:
字典名={键1:值,键2:值,……}
比如:
>>> mobile={'ll':123456,'zz':654321} //定义字典
>>> print mobile //输出字典内容
{'ll': 123456, 'zz': 654321}
>>> print type(mobile) //输出字典的类型
(2)字典的取值操作
字典的取值与元组和列表有所不同,元组和列表都是通过数字索引获取对应位置的值,而字典是通过键获取对应的值。取值的语法如下:
字典[键]
比如:
>>> mobile={'ll':123456,'zz':654321}
>>> print mobile['ll']
123456
需要注意的是,键是唯一的,而不同键的值却可以相同,当定义多个键相同时,字典之后保留最后一个定义的键值对。
(3)字典的添加、修改、删除操作
(1)字典添加新元素只需要对新键进行赋值即可,字典中不存在的键,便会自动添加。比如:
>>> mobile={'ll':123456,'zz':654321}
>>> mobile['jj']=987654
>>> print mobile
{'ll': 123456, 'jj': 987654, 'zz': 654321}
(2)修改字典中的元素,直接使用存在的键赋值。比如:
>>> mobile={'ll': 123456, 'jj': 987654, 'zz': 654321}
>>> mobile['ll']=321456
>>> print mobile
{'ll': 321456, 'zz': 654321, 'jj': 987654}
(3)删除字典中的元素,使用del函数。比如:
>>> mobile={'ll': 123456, 'jj': 987654, 'zz': 654321}
>>> del mobile['ll']
>>> print mobile
{'zz': 654321, 'jj': 987654}
(4)字典中常见的问题
字典不可使用“+”运算符执行连续操作。比如:
>>> mobile1={'qq':123,'ww':456}
>>> mobile2={'aa':321,'ss':654}
>>> print mobile1+mobile2
Traceback (most recent call last):
File "", line 1, in
print mobile1+mobile2
TypeError: unsupported operand type(s) for +: 'dict' and 'dict'
(5)字典的应用示例
脚本内容:
kgc={} //接收用户键盘输入的用户名和密码
name='--please input user:'
user=raw_input(name) //raw_input表示:读取标准输入的字符串
pwd=raw_input("password:")
kgc[user] =pwd
print kgc //根据用户名查询密码
name = '--user searched:'
key=raw_input(name)
print kgc[key]
执行后的效果:
--please input user:lv
password:123
{'lv': '123'}
--user searched:lv
123
———————— 本文至此结束,感谢阅读 ————————
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
分享文章:Python基础详解-创新互联
网站URL:http://hbruida.cn/article/djdppc.html