python入门:这篇文章带你直接学会python


Posted in Python onSeptember 14, 2018

初试牛刀
假设你希望学习Python这门语言,却苦于找不到一个简短而全面的入门教程。那么本教程将花费十分钟的时间带你走入Python的大门。本文的内容介于教程(Toturial)和速查手册(CheatSheet)之间,因此只会包含一些基本概念。很显然,如果你希望真正学好一门语言,你还是需要亲自动手实践的。在此,我会假定你已经有了一定的编程基础,因此我会跳过大部分非Python语言的相关内容。本文将高亮显示重要的关键字,以便你可以很容易看到它们。另外需要注意的是,由于本教程篇幅有限,有很多内容我会直接使用代码来说明加以少许注释。

Python的语言特性
Python是一门具有强类型(即变量类型是强制要求的)、动态性、隐式类型(不需要做变量声明)、大小写敏感(var和VAR代表了不同的变量)以及面向对象(一切皆为对象)等特点的编程语言。

获取帮助
你可以很容易的通过Python解释器获取帮助。如果你想知道一个对象(object)是如何工作的,那么你所需要做的就是调用help(<object>)!另外还有一些有用的方法,dir()会显示该对象的所有方法,还有<object>.__doc__会显示其文档:

python入门:这篇文章带你直接学会python

语法
Python中没有强制的语句终止字符,且代码块是通过缩进来指示的。缩进表示一个代码块的开始,逆缩进则表示一个代码块的结束。声明以冒号(:)字符结束,并且开启一个缩进级别。单行注释以井号字符(#)开头,多行注释则以多行字符串的形式出现。赋值(事实上是将对象绑定到名字)通过等号(“=”)实现,双等号(“==”)用于相等判断,”+=”和”-=”用于增加/减少运算(由符号右边的值确定增加/减少的值)。这适用于许多数据类型,包括字符串。你也可以在一行上使用多个变量。例如:

python入门:这篇文章带你直接学会python

数据类型
Python具有列表(list)、元组(tuple)和字典(dictionaries)三种基本的数据结构,而集合(sets)则包含在集合库中(但从Python2.5版本开始正式成为Python内建类型)。列表的特点跟一维数组类似(当然你也可以创建类似多维数组的“列表的列表”),字典则是具有关联关系的数组(通常也叫做哈希表),而元组则是不可变的一维数组(Python中“数组”可以包含任何类型的元素,这样你就可以使用混合元素,例如整数、字符串或是嵌套包含列表、字典或元组)。数组中第一个元素索引值(下标)为0,使用负数索引值能够从后向前访问数组元素,-1表示最后一个元素。数组元素还能指向函数。来看下面的用法:

python入门:这篇文章带你直接学会python

字符串
Python中的字符串使用单引号(‘)或是双引号(“)来进行标示,并且你还能够在通过某一种标示的字符串中使用另外一种标示符(例如 “He said ‘hello'.”)。而多行字符串可以通过三个连续的单引号(”')或是双引号(“””)来进行标示。Python可以通过u”This is a unicode string”这样的语法使用Unicode字符串。如果想通过变量来填充字符串,那么可以使用取模运算符(%)和一个元组。使用方式是在目标字符串中从左至右使用%s来指代变量的位置,或者使用字典来代替,示例如下:

python入门:这篇文章带你直接学会python

流程控制
Python中可以使用if、for和while来实现流程控制。Python中并没有select,取而代之使用if来实现。使用for来枚举列表中的元素。如果希望生成一个由数字组成的列表,则可以使用range(<number>)函数。
函数

函数通过“def”关键字进行声明。可选参数以集合的方式出现在函数声明中并紧跟着必选参数,可选参数可以在函数声明中被赋予一个默认值。已命名的参数需要赋值。函数可以返回一个元组(使用元组拆包可以有效返回多个值)。Lambda函数是由一个单独的语句组成的特殊函数,参数通过引用进行传递,但对于不可变类型(例如元组,整数,字符串等)则不能够被改变。这是因为只传递了该变量的内存地址,并且只有丢弃了旧的对象后,变量才能绑定一个对象,所以不可变类型是被替换而不是改变(译者注:虽然Python传递的参数形式本质上是引用传递,但是会产生值传递的效果)。


Python支持有限的多继承形式。私有变量和方法可以通过添加至少两个前导下划线和最多尾随一个下划线的形式进行声明(如“__spam”,这只是惯例,而不是Python的强制要求)。当然,我们也可以给类的实例取任意名称。
导入

外部库可以使用 import [libname] 关键字来导入。同时,你还可以用 from [libname] import [funcname] 来导入所需要的函数。例如:

python入门:这篇文章带你直接学会python

小结
本教程并未涵盖Python语言的全部内容(甚至连一小部分都称不上)。Python有非常多的库以及很多的功能特点需要学习,所以要想学好Python你必须在此教程之外通过其它方式,例如阅读Dive into Python。我希望这个教程能给你一个很好的入门指导。

Python 相关文章推荐
新手该如何学python怎么学好python?
Oct 07 Python
Python中非常实用的一些功能和函数分享
Feb 14 Python
python脚本设置超时机制系统时间的方法
Feb 21 Python
NumPy.npy与pandas DataFrame的实例讲解
Jul 09 Python
Python2和Python3之间的str处理方式导致乱码的讲解
Jan 03 Python
利用selenium爬虫抓取数据的基础教程
Jun 10 Python
利用Python小工具实现3秒钟将视频转换为音频
Oct 29 Python
python3.6、opencv安装环境搭建过程(图文教程)
Nov 05 Python
pytorch 数据处理:定义自己的数据集合实例
Dec 31 Python
快速查找Python安装路径方法
Feb 06 Python
Python 常用日期处理 -- calendar 与 dateutil 模块的使用
Sep 02 Python
Python 测试框架unittest和pytest的优劣
Sep 26 Python
Python函数any()和all()的用法及区别介绍
Sep 14 #Python
Python连接Redis的基本配置方法
Sep 13 #Python
Python线程下使用锁的技巧分享
Sep 13 #Python
Python利用ORM控制MongoDB(MongoEngine)的步骤全纪录
Sep 13 #Python
python中字符串内置函数的用法总结
Sep 13 #Python
浅析python继承与多重继承
Sep 13 #Python
Python中分支语句与循环语句实例详解
Sep 13 #Python
You might like
PHP Document 代码注释规范
2009/04/13 PHP
destoon实现调用自增数字从1开始的方法
2014/08/21 PHP
php模拟服务器实现autoindex效果的方法
2015/03/10 PHP
PHP计算加权平均数的方法
2015/07/16 PHP
PHP信号量基本用法实例详解
2016/02/12 PHP
总结PHP如何获取当前主机、域名、网址、路径、端口和参数等
2016/09/09 PHP
PHP基于自定义函数生成笛卡尔积的方法示例
2017/09/30 PHP
简单实用的PHP文本缓存类实例
2019/03/22 PHP
PHP函数用法详解【初始化、嵌套、内置函数等】
2020/06/02 PHP
动态标签 悬停效果 延迟加载示例代码
2013/11/21 Javascript
JavaScript设计模式之观察者模式(发布者-订阅者模式)
2014/09/24 Javascript
JS返回iframe中frameBorder属性值的方法
2015/04/01 Javascript
深入浅析JavaScript面向对象和原型函数
2016/02/06 Javascript
浅谈Angularjs中不同类型的双向数据绑定
2018/07/16 Javascript
Vue中 v-if/v-show/插值表达式导致闪现的原因及解决办法
2018/10/12 Javascript
PostgreSQL Node.js实现函数计算方法示例
2019/02/12 Javascript
vue实现移动端轻量日期组件不依赖第三方库的方法
2019/04/28 Javascript
JavaScript Canvas编写炫彩的网页时钟
2019/10/16 Javascript
Vue+elementUI实现多图片上传与回显功能(含回显后继续上传或删除)
2020/03/23 Javascript
[11:12]2018DOTA2国际邀请赛寻真——绿色长城OpTic
2018/08/10 DOTA
python虚拟环境virualenv的安装与使用
2016/12/18 Python
python中Matplotlib实现绘制3D图的示例代码
2017/09/04 Python
python中virtualenvwrapper安装与使用
2018/05/20 Python
python递归法解决棋盘分割问题
2019/07/17 Python
PyTorch里面的torch.nn.Parameter()详解
2020/01/03 Python
python-docx文件定位读取过程(尝试替换)
2020/02/13 Python
解决keras,val_categorical_accuracy:,0.0000e+00问题
2020/07/02 Python
selenium3.0+python之环境搭建的方法步骤
2021/02/01 Python
俄罗斯外国汽车和国产汽车配件网上商店:Движком
2020/04/19 全球购物
大学生村官任职感言
2014/01/09 职场文书
安全生产汇报材料
2014/02/17 职场文书
国际经济与贸易专业大学生职业规划书
2014/03/01 职场文书
超市优秀员工事迹材料
2014/05/01 职场文书
Requests什么的通通爬不了的Python超强反爬虫方案!
2021/05/20 Python
【TED出品】天梯非主流开心游1700 划水骑士
2022/03/31 魔兽争霸
一次Mysql update sql不当引起的生产故障记录
2022/04/01 MySQL