本文简要介绍了Python对于初学者的语言。该文章针对绝对的初学者,没有以前的Python经验,尽管一些以前的编程知识将有所帮助,但不一定需要。
本文分为以下几个部分:
-
安装和设置
-
运行你的第一个程序
-
条件声明
-
列表,元组和字典
为什么要学习Python
问题出在这里,为什么你应该学习Python。还有很多其他的编程语言 你甚至可能会学到一些。那么为什么Python,那么特别呢?学习Python有各种各样的原因,其中最重要的已经在下面列出。
-
容易学习
Python被认为是最适合初学者的语言之一。Python的语法是最简单的。您不必学习复杂的变量类型,使用括号来分组代码块等等。Python建立在初学者的基本原则之上。
-
高度按需
据Indeed.com最近的一项调查显示,Python开发人员是美国第二高的付费开发人员。Python的巨大工作潜力可以通过以下事实来估计:在2014年,程序员的平均招聘率下降了5%,但Python开发人员仍然增长了8.7%。
-
理想的Web开发
与其他Web开发语言(如PHP和ASP.NET)相比,Python的速度更快。此外,Python拥有诸如Django,Flask和Pylons等众多惊人的框架,使Web开发更加简单。像Instagram,Pinterest和The Guardian这样的网站都是基于流行的Django框架。
-
用于机器学习和AI
Python是机器学习和人工智能操作中使用最广泛的语言。与MATLAB或R相比,像TensorFlow和scikit-learn这样的Python库可以使AI任务变得更简单,以前是数据科学和AI任务中使用最广泛的环境。
-
与Raspberry Pi合作
Python是Raspberry Pi最流行的编程语言,它是一种用于广泛应用的袖珍微型计算机,如机器人,游戏机,玩具等。简而言之,学习Python,如果你想用Raspberry Pi构建东西。
-
公司亲爱的
如果我们说Python是所有所有大型企业公司(如谷歌,雅虎,NASA,迪斯尼,IBM等)的宠儿,这并不夸张,这些公司已经将Python纳入其许多应用程序的核心。
-
大社区
Python拥有最大的在线编程社区之一,并且不断增长。Python拥有第五大Stack Overflow社区和第三大会议社区。最重要的是,它是GitHub中第四大使用的语言,这意味着有大量现有的代码可以学习。
安装和设置
虽然有几种方法来安装Python for Windows,但为了这篇文章,我们将使用Anaconda。这无疑是当前应用最广泛的Python环境。要下载Anaconda,
向下滚动一下,您应该会看到下载选项。选择,Python 3.6如下图所示:
这将会将Anaconda安装程序下载到您的计算机。打开安装程序,您将看到以下选项:
请按照以下步骤进行安装
-
点击“下一步”按钮。条款和条件将出现,您可以阅读如果您有足够的时间,但您可以单击“我同意”反正。
-
在下一个窗口中选择所需的安装类型。如果你是Python的绝对初学者,我建议选择“Just me”选项。
-
接下来,选择安装文件夹(默认是最好的)。
-
将出现“提前选项”对话框,不保留第一个选项,第二个选中,然后单击“安装”。这在下面的屏幕截图中显示。
现在坐下来喝点咖啡,安装可能需要一些时间。
安装完成后,您将看到消息:
单击“下一步”,然后单击随后的对话框中的“完成”按钮完成安装。
运行你的第一个程序
虽然您也可以通过命令行运行Python程序,但通常更适合初学者使用文本编辑器。幸运的是,安装Anaconda后,您也可以安装Jupyter Notebook。“Jupyter笔记本”是一个基于云的应用程序,允许用户创建,共享和管理他们的文档。我们将使用Jupyter在本文中编写我们的Python代码。
要打开Jupyter,您可以进入“开始菜单”,找到“Jupyter Notebook”应用程序。您也可以在应用程序中搜索它。如下所示:
打开“Jupyter Notebook”应用程序。然后,它将在默认浏览器中打开。为了兼容,我建议您将Google Chrome用作默认浏览器,但其他浏览器类型(如Firefox)也可以正常工作。
当您的浏览器中打开应用程序时,您将看到以下页面:
在页面的右侧,您将看到一个选项“新建”。单击该按钮,将出现一个下拉列表。从下拉列表中选择“Python 3”。这将为您打开一个全新的笔记本,看起来像这样:
在这里,您可以轻松地编写,保存和共享您的Python代码。
我们来测试一下,确保一切正常。为此,我们将创建一个将字符串打印到屏幕的简单程序。
在Jupyter笔记本中的文本字段中输入以下代码(如上图截图所示):
print("Welcome to Python!")
它
print
确实是什么听起来像,它只是打印一些文本到屏幕。要显示的文本是在
print
关键字后面的括号内的双引号内输入的。
要在“Jupyter Notebook”中运行代码,只需按“Ctrl + Enter”即可。以上代码的输出应如下所示:
在那里你有它,我们已经成功地执行了我们的第一个Python程序!在接下来的部分中,我们将继续使用Jupyter教授和讨论一些核心的Python功能,从变量开始。
Python变量
简单地说,变量是存储一些数据的内存位置。您可以使用变量来存储值,无论是数字,文本还是布尔值(true / false)值。当您需要在代码中再次使用该值时,您可以简单地使用保存该值的变量。你几乎可以把它们当成一个容器来存储,以供以后使用。
Python中有五种不同的核心数据类型:
在本节中,我们将只会看看数字和字符串,并将在本文后面的各自部分进一步介绍。
数字
变量的数字类型存储数字数据。看下面简单的例子:
Python中有四种不同的数据类型:
-
整数,如真正的全价值数字:10
-
长整型,最后为“L”,值为1024658L
-
这些也可以十六进制和八进制形式使用
-
浮点数据,数字用小数表示:3.14159
-
复数数据,用于表示复数类型:2 + 3j
字符串
字符串用于在Python中存储文本数据。看下面的例子:
Python中的运算符
编程中的运算符是允许您操作操作数来执行特定功能的结构。它们与现实生活中的运算符非常相似,例如算术运算符,例如加法,减法,大于,小于,和/或运算符等。
Python中有七种类型的运算符:
-
算术运算符
-
逻辑运算符
-
作业经营者
-
比较运算符
-
按位运算符
-
身份运营商
-
会员运营商
在这篇文章中,我们将保持简单,仅研究前四名运营商。其他运营商超出了本文的范围。
算术运算符
算术运算符对操作数执行加法,减法,乘法,除法和指数函数等数学运算。算术函数的细节已在下表中给出:
您可能还记得在“数字”数据变量部分中先前看到算术加法运算符的一个例子。在Python中,加法运算符可以应用于任何类型的数字,甚至字符串。
逻辑运算符
Python支持的逻辑运算符可以帮助您执行简单的布尔代数如下:
假设
o1
和
o2
有价值观
True
和
False
分别。
操作者
|
功能
|
例
|
和
|
所有条件都返回true
|
(o1 and o2)
是假的
|
要么
|
如果任何条件为真,则返回true
|
(o1 or o2)
是真的
|
不
|
返回实际逻辑状态的相反
|
Not(o1)
是假的
|
以下代码有助于以上例解释上述操作符:
以上代码的输出是:
作业经营者
赋值操作符允许您给变量赋予一个值,这可能是操作的结果。下表包含一些Python中最广泛使用的赋值运算符:
操作者
|
功能
|
例
|
分配
|
将右侧的值分配给左侧的变量
|
r = n1 + n2
分配的值
n1 + n2
成
r
|
添加和分配
|
添加操作数并将结果分配给左侧的变量
|
n1 += n2
是相同的
n1 = n1 + n2
|
减去和分配
|
从左侧减去右侧的操作数,并将结果分配给左侧
|
n1 -= n2
手段
n1 = n1 - n2
|
乘以分配
|
将两个操作数相乘并将结果分配给左边的一个
|
n1 *= n2
手段
n1 = n1 * n2
|
划分和分配
|
划分两个操作数,并将结果分配给左边的一个
|
n1 /= n2
手段
n1 = n1 / n2
|
模数和分配
|
通过将左操作数除以右边来获取模数,并将结果分配给左边的操作数
|
n1 %= n2
手段
n1 = n1 % n2
|
指数和分配
|
将右操作数指向左侧,并将值分配给左侧
|
n1 **= n2
手段
n1 = n1 ** n2
|
看看下面的例子来看看一些赋值操作符的操作:
以上代码的输出将是:
6 2 8 2 .0
意在最后一个操作中我们得到一个浮点数作为结果,而在所有prevoius操作中我们得到整数numberes。这是因为这是我们示例中唯一可以将两个整数转换为浮点数的数学运算。
比较运算符
比较运算符用于比较两个或多个操作数。Python支持以下比较运算符:
假设
n1
是10,
n2
在下表中是5。
操作者
|
功能
|
例
|
==
|
True
如果两个操作数彼此相等,则返回
|
(n1 == n2)
不是真的
|
!=
|
返回true的两个操作数不相等
|
(n1 != n2)
是真的
|
>
|
如果左操作数大于右操作数,则返回true
|
(n1 > n2)
是真的
|
<
|
如果左操作数小于右操作数,则返回true
|
(n1 < n2)
不是真的
|
> =
|
如果左操作数等于或大于右操作数,则返回true
|
(n1 >= n2)
是真的
|
<=
|
如果左操作数等于或小于右操作数,则返回true
|
(n1 =< n2)
不是真的
|
考虑下面比较运算符的简单例子:
条件声明
条件语句用于根据特定条件选择要执行的代码块。假设在医院管理系统中,您想要实施一项检查,65岁以上的患者可以接受优先治疗,而其他患者则不能接受有条件的陈述。
有四种类型的条件语句:
-
“if”语句
-
“if / else”语句
-
“if / elif”语句
-
嵌套“if / else”语句
基本上,第二类和第三类只是第一种语句类型的扩展。
如果声明
密切注意条件语句的语法。在大多数其他编程语言中,如果“if”条件返回为真,则要执行的代码块被括在括号内。在Python中,您必须在“if”条件之后使用冒号,然后如果条件为true,则必须缩进要执行的代码。
由于没有括号,Python被广泛认为是比许多其他语言更清晰的语言。使用缩进来指定范围,它有自己的利弊。
在上面的例子中,我们有一个
age
值为67 的变量。我们检查是否
age
大于65,如果这个条件返回true,那么我们打印一个消息告诉用户他/她有资格获得优先处理。请注意,此消息是缩进的,它告诉我们,在真实条件后执行的代码。最后,我们只需在屏幕上打印感谢信息。此代码的输出将是:
您有资格获得 优先处理。 感谢您对您的光临
现在让我们将
age
变量的值设置为55,看看差异。
上面的输出如下所示:
感谢您对您的光临
请注意,这一次病情没有恢复正常,因此告诉患者他有资格获得优先治疗的声明不会印在屏幕上。只有问候才出现,因为它们不在“if”语句的内部(缩进)内。
如果/ Else声明
如果“if”语句返回false,则使用“if / else”语句来指定执行的替代路径。看下面的例子:
使用这种方法我刚才描述过,我们可以重写前面的例子,看起来像这样:
该代码将产生与上一个示例相同的输出。
嵌套如果Else声明
嵌套的“if / else”语句用于实现嵌套条件(即另一条件下的条件)。请考虑以下示例:
在这里,我们有一个外部条件,如果
age
大于或等于65,那么检查病人是否有保险。如果患者有保险,保险公司将在以后付款,否则患者必须提前支付。
循环
迭代语句或更常见的循环用于重复执行一段代码。考虑是否必须在屏幕上打印100人的名字。您将需要编写100个打印语句,或者您必须在一个打印语句中使用数百个转义字符。如果你必须重复执行这个任务,你必须编写数十万繁琐的代码行。更好的方法是使用循环。
Python中有两种主要的循环类型:
请记住,您可以像我们对条件语句一样嵌套循环,但是我们不会在这里进行。
For循环
“for循环”用于遍历元素集合。循环继续执行,直到集合中的所有元素都被遍历为止。看一下for循环的简单例子:
上面的例子简单地打印了每个项目的产品
nums
和5.这里我们有一个
nums
包含1到10的整数的列表。不用担心,我们将在后面的部分详细研究。现在,只要将其视为一个元素的集合,在这种情况下就是数字。
要注意上面的代码。它遵循以下语法:
While循环
“while循环”与“for循环”不同,因为它在一定条件保持返回true的同时继续执行。在while循环的每次迭代之后,重新评估该条件。当条件最终返回false时,while循环停止执行并退出。
看下面的例子:
这里循环将继续执行,直到值
x
变为负值。该
x
变量的初始值50,并通过我们5.递减它在每次迭代期间于是,经过10次迭代的值将变为负,然后循环将停止执行。
输出将如下所示:
虽然循环对于您还不知道需要多少次迭代的时间有好处。For循环迭代设置次数,而while循环可以迭代未知的次数,甚至无限次次。
Python中的函数
编程中的功能是执行特定任务的结构。当您必须在整个代码中多次执行任务时,函数可以方便地使用。而不是一次又一次地重写相同的功能,而是可以创建一个执行该任务的函数,然后随时随地调用该函数。
请注意,重复执行任务并多次执行任务之间有区别。循环使用,您必须重复执行任务。另一方面,当您在代码中的不同位置执行相同的任务时,会使用函数。
考虑一个场景,你必须打印一个长的语句来在不同的时间屏幕。而是写一个打印所需语句的函数,然后在要打印语句的地方调用函数。
看下面的例子:
有两件事我想在这段代码中指出:函数定义和函数调用。
函数定义是指定义由函数执行的任务。要定义一个函数,你必须使用关键字
def
后跟函数的名称,这
displayWelcome
在上面的例子中。您可以使用任何函数名称,但要使用语义功能。功能名称后面是开和右括号。括号用于定义参数或任何默认输入值,我们将在下一个示例中看到这一点。括号后,您必须使用冒号,并在下一行定义函数的正文。函数通常以
return
语句结尾,但如果未返回值,则不需要。
在我们的示例代码的第二部分,您将看到函数调用。要调用一个函数,你只需要编写函数名称后跟一对括号。如果函数接受参数,则必须将它们传递给括号。
以上代码的输出将是:
你可以看到我们的长串被打印了两次。之前的“做某事”声明,一旦在之后,哪些符合我们的代码中的函数调用的顺序。
你可以想象这是编程的重要性。如果我们需要执行一个更复杂的任务,如下载文件或执行复杂的计算?多次写出完整的代码是浪费的,这是功能进入的地方。
带参数的函数
现在我们来看看如何将参数传递给一个函数。一个参数只是一个给调用者赋予函数的变量。
我们来写一个函数,它将传递给它的两个数字作为括号中的参数:
列表,元组和字典
列表,元组和字典是编程中最常用的三种数据结构之一。虽然所有这些都存储数据的集合,主要区别在于:
-
如何将数据放在数据结构中
-
数据如何存储在结构中
-
数据结构如何访问数据
在接下来的几个部分中,您将看到每个数据结构的其中一些属性。
清单
列表用于存储不同数据类型的项目集合。元素存储在方括号内,每个元素用逗号分隔开。
我们来看看如何创建一个简单的列表:
randomlist = [ 'apple','banana',True,10,'Mango' ]
您可以看到我们在此列表中存储了字符串,数字和布尔值。在Python中(与其他强类型语言不同),列表可以将任何类型的数据存储在单个列表中,如上所示。然而,更常见的是,列表倾向于存储相同数据类型的许多不同值。
访问列表元素
要访问列表中的元素,只需写入列表变量的名称,后跟一对方括号。括号内指定要访问的元素的索引编号。重要的是要注意,Python(和许多其他编程语言)中的列表,列表索引从0开始。这意味着每个列表中的第一个元素在位置0,最后一个元素在位置n-1,其中n是列表的长度。这被称为零索引。
看看这段代码:
这里我们访问
randomlist
列表的第一个和第五个元素。输出结果为:
apple Mango
您可能还注意到,列表中的元素保持其存储顺序。除非明确移动或删除它们,否则它们将保持相同的顺序。
分配新列表元素
要将值分配给现有的列表位置,必须指定要为其分配值的位置的索引,然后使用赋值运算符(
=
)来实际分配该值。
请参阅以下代码:
这里我们更新了列表的第一个元素。我们在更新前后显示元素的值,以显示更改。