Python学习入门:7大特点及相关语法

2023-06-0708:25:19编程语言入门到精通Comments465 views字数 5267阅读模式

Python初步了解

Python 是一门优雅而健壮的编程语言,它继承了传统编译语言的强大性和通用性,同时也借鉴了简单脚本和解释语言的易用性:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html


Python简史

贵铎·范·罗萨姆(Guido van Rossum)于1989 年底始创了Python,那时,他还在荷兰的CWI(Centrum voor Wiskunde en Informatica,国家数学和计算机科学研究院)。1991 年初,Python 发布了第一个公开发行版文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

Python特点

当人们询问:“什么是Python?”的时候,很难用任何一个具象来描述它。人们更倾向于一口气不加思索地说出他们对Python 的所有感觉,Python 是_(请填写),这些特点究竟又是什么呢?为了让你能知其所以然,我们下面会对这些特点进行逐一地阐释文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

1.高级
系统调用的解释型脚本语言,例如Tcl、Perl 和Python。这些语言都有高级的数据结构,这样就减少了以前“框架”开发需要的时间。。像Python 中的列表(大小可变的数组)和字典(哈希表)就是内建于语言本身的。在核心语言中提供这些重要的构建单元,可以鼓励人们使用它们,缩短开发时间与代码量,产生出可读性更好的代码。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

2.面向对象
面向对象 编程支持将特定的行为、特性以及和/或功能与它们要处理或所代表的数据结合在一起。Python 的面向对象的特性是与生俱来的。然而,Python 绝不想Java 或Ruby 仅仅是一门面向对象语言,事实上它融汇了多种编程风格。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

2.可升级
Shell脚本的代码重用度很低。Python 却不是这样,你可以不断地在各个项目中完善你的代码,添加额外的新的或者现存的Python 元素,也可以重用您脑海中的代码。Python 提供了基本的开发模块,你可以在它上面开发你的软件,而且当这些需要扩展和增长时,Python 的可插入性和模块化架构则能使你的项目生机盎然和易于管理。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

3.可扩展
就算你的项目中有大量的Python 代码,你也依旧可以有条不紊地通过将其分离为多个文件
或模块加以组织管理。而且你可以从一个模块中选取代码,而从另一个模块中读取属性。更棒
的是,对于所有模块,Python 的访问语法都是相同的。容易地使用 C 编写扩展确实Python 的优势。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

4.可移植性
因为Python 是用C 写的,又由于C 的可移植性,使得Python 可以运行在任何带有ANSI C 编译器的平台上。尽管有一些针对不同平台开发的特有模块,但是在任何一个平台上Python 开发的通用软件都可以稍事修改或者原封不动的在其他平台上运行。这种可移植性既适用于不同的架构,也适用于不同的操作系统。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

5.易学易读
Python 关键字少、结构简单、语法清晰。它没有其他语言通常用来访问变量、定义代码块和进行模式匹配的命令式符号(;)。Python 代码变得更加定义清晰和易于阅读。Python没有给你多少机会使你能够写出晦涩难懂的代码,而是让他人很快就能理解你写的代码。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

6.易维护与健壮性
Python 项目的成功很大程度上要归功于其源代码的易于维护。针对错误,Python 提供了“安全合理”的退出机制,让程序员能掌控局面。一旦你的Python 由于错误崩溃,解释程序就会转出一个“堆栈跟踪”,那里面有可用到的全部信息,包括你程序崩溃的原因以及是那段代码(文件名、行数、行数调用等等)出错了。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

7. 其他
也是高效的快速原型开发工具。Python 有许多面向其他系统的接口,大家已经为Python 开发了为数众多的扩展库,即“即插即用”。
内存管理器。C 或者C++最大的弊病在于内存管理是由开发者负责的,哪怕是对于一个很少访问、修改和管理内存的应用程序,程序员也必须在执行了基本任务之外履行这些职责。内存管理是由Python 解释器负责的。
解释性和(字节)编译性。Python 是一种解释型语言,这意味着开发过程中没有了编译这个环节。类似于Java,Python实际上是字节编译的,其结果就是可以生成一种近似机器语言的中间形式。

相关语法

输入函数
1. >>>print 变量名 ——显示变量内容
2. >>>变量名 ——所有以字符串形式显示内容即变量的字符串表示
3. >>>_ ——_表示最后一个表达式的值(上一个)
4. >>>print “%s is number %d” %(“python”,1) ——融合c的格式输出控制语法
5. >>>print >> , ‘Fatal error:invalid input!’ ——重定向,也可输出到文件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

输出函数
1. >>>user=(‘Enter login name:’) ——函数raw_input()实现键盘输入,user的值是输入的值不包括’Enter login name:’
2. >>>help(raw_input) ——help()函数帮助查看函数信息,帮助函数
3. 只要在print 语句的最后添加一个逗号(,), 就可以改变按行输出。
4. 通过指定输出格式, 程序员可以最大程度的控制输出布局,文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

注释
1. # 符号标示注释,从 # 开始,直到一行结束的内容都是注释。
2. 文档字符串的特别注释。你可以在模块、类或者函数的起始添加一个字符串,起到在线文档的功能文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

运算法
1. 算术运算符:+ - * / // % * ——两种除法:/传统除法,//浮点除法(结果四舍五入)。乘方运算符()。+ 和 - 优先级最低, , /, //, %优先级较高, 单目运算符 + 和 - 优先级更高, 乘方()的优先级最高。
2. 比较运算符:<<= > >= == != <> ——表达式值返回真假,!= <>为两种不等于。
3. 逻辑运算符:and or not ——逻辑运算符可以将任意表达式连接在一起,并得到一个布尔值:3<4<5可以等价于3<4 and 4<5文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

变量
1. python变量名大小写敏感,变量 “cAsE” 与 “CaSe” 是两个不同的变量。
2. 一门动态类型语言,说不需要预先声明变量的类型。 变量的类型和值在赋值那一刻被初始化。变量赋值通过等号来执行:counter=0
3. Python 也支持增量赋值,也就是运算符和等号合并在一起:n*=10文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

数字
1. 支持五种基本数字类型:
* int(有符号整数)
* long(长整数):Python 的长整数类似于 Java 中的BigInteger 类型。
* bool(布尔值):如果将布尔值放到一个数值上下文环境中(比方将 True 与一个数字相加), True 被当成整数值 1, 而False则会被当成整数值 0
* float(浮点数)
* complex(复数)
* decimal(十进制浮点数):非内建类型,要导入decimal模文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

字符串
串被定义为引号之间的字符集合Python 支持使用成对的单引号或双引号,三引号(三个连续的单引号或者双引号)可以用来包含特殊字符。
子字符串获取:索引运算符( [ ] )和切片运算符( [ : ] )可以得到,。字符串有其特有的索引规则:第一个字符的索引是 0,最后一个字符的索引是 -1文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

str="you are a girl"
print str[4]

其他操作符:
1. 加号(+):字符串连接
2. 星号(*):字符串重复文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

基本数据结构

列表与元组

可以将列表和元组当成普通的“数组”,它能保存任意数量任意类型的Python 对象。和数组一样,通过从0 开始的数字索引访问元素,但是列表和元组可以存储不同类型的对象.文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

列表文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

列表元素用中括号( [ ])包裹,元素的个数及元素的值可
以改变。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

  1. 通过切片运算( [ ] 和 [ : ] )可以得到子集,这一点与字符串的使用方法一样。
aList=[1,2,3,4]
print aList[2:]
aList[0]=0
print aList[0]

元组文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

元组元素用小括号(( ))包裹,不可以更改(尽管他们的内容可以)。元组可以看成是只读的列表.文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

  1. 元组也可以进行切片运算,得到的结果也是元组(不能被修改):不能进行上面的aList[0]=0修改操作。

字典文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

字典是Python 中的映射数据类型,工作原理类似哈希表,由键-值(key-value)对构成。几乎所有类型的Python 对象都可以用作键,值可以是任意类型的Python 对象,字典元素用大括号({ })包裹.
相关: python字典的索引快速搜索方法比较文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

aDict={'key1':1}
print aDict['key1']
aDict={'key1':1,'key2':'port'}
print aDict.keys()

代码块与缩进对齐

代码块通过缩进对齐表达代码逻辑而不是使用大括号,因为没有了额外的字符,程序的可读性更高。而且缩进完全能够清楚地表达一个语句属于哪个代码块.文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

逻辑控制

if语句文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

if expression:
if_suite
else:
else_suit
if expression:
if_suite
elif expression2:
elif_suite
else:
else_suite

while循环文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

while expression:
while_suite

for 及range()内建函数文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

Python 提供了一个range()内建函数来生成这种列表。它正好能满足我们的需要, 接受一个数值范围, 生成一个列表文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

foritemin range(3):
print item
  1. range()函数经常和len()函数一起用于字符串索引.
  2. 这些循环有一个约束, 你要么循环索引, 要么循环元素。这导致了enumerate()
    函数的推出.
str='abc'
for i,ch in enumerate(str):
print ch,'(%d)'%i
result:
a (0)
b (1)
c (2)

列表解析

可以在一行中使用一个for 循环将所有值放到一个列表文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

squared = [x ** 2for x inrange(4)]

文件与内建函数open()、file()

打开文件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

file()内建函数是最近才添加到Python 当中的。它的功能等同于 open(), 不过file()
这个名字可以更确切的表明它是一个工厂函数文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

handle = open(file_name, access_mode = 'r')

解释:file_name 变量包含我们希望打开的文件的字符串名字, access_mode 中 ‘r’ 表示读取,’w’ 表示写入, ‘a’ 表示添加。其它可能用到的标声还有 ‘+’ 表示读写, ‘b’表示二进制访问. 如果未提供 access_mode , 默认值为 ‘r’。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

错误及异常

要给你的代码添加错误检测及异常处理, 只要将它们封装在 try-except 语句当中。 try
之后的代码组, 就是你打算管理的代码。 except 之后的代码组, 则是你处理错误的代码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

try:
filename = raw_input('Enter file name: ')
fobj = open(filename, 'r')
for eachLine in fobj:
print eachLine, ()
except IOError, e:
print'file open error:', e

函数

Python 中的函数使用小括号( () )调用。函数在调用之前必须先定义。如果函数中没有 return 语句, 就会自动返回 None 对象.文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

  1. 定义函数
deffunction_name([arguments]):
"optional documentation string"
function_suite

解释:定义一个函数的语法由 def 关键字及紧随其后的函数名再加上该函数需要的几个参数组
成。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

  1. 调用函数:addMe2Me()
  2. 默认参数:def foo(debug=True):

类是面向对象编程的核心, 它扮演相关数据及逻辑的容器角色。它们提供了创建“真实”对象(也就是实例)的蓝图,python可使用类或者不使用类编程文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

  1. 定义类
classClassName(base_class[es]):
"optional documentation string"
static_member_declarations
method_declarations

解释:使用 class 关键字定义类。 可以提供一个可选的父类或者说基类; 如果没有合适的基类,
那就使用 object 作为基类。class 行之后是可选的文档字符串, 静态成员定义, 及方法定义。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

2.创建类实例:foo1 = FooClass(),自动调用 init() 方法的结果.文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

模块

模块是一种组织形式, 它将彼此有关系的Python 代码组织到一个个独立文件当中,模块可以包含可执行代码, 函数和类或者这些东西的组合。当你创建了一个 Python 源文件,模块的名字就是不带 .py 后缀的文件名。一个模块创建之后, 你可以从另一个模块中使用 import 语句导入这个模块来使用。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html

  1. 模块的导入:import module_name
  2. 访问一个模块函数或者一个模块变量:()、

实用函数

  • dir([object]) 显示对象属性,如果没有提供参数, 则显示全局变量的名字
  • help([obj]) 以一种整齐美观的形式 显示对象的文档字符串, 如果没有提供任何参数, 则会进入交互式帮助。
  • int(obj) 将一个对象转换为整数
  • str(obj) 将一个对象转换为字符串
  • type(obj) 返回对象的类型(返回值本身是一个type 对象!)
  • raw_input(str) 等待用户输入一个字符串, 可以提供一个可选的参数 str 用作提示信
    息。
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/45189.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/ymba/45189.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定