只要你有点计算机基础!此篇包会!
本文简要介绍了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
您可能还注意到,列表中的元素保持其存储顺序。除非明确移动或删除它们,否则它们将保持相同的顺序。
分配新列表元素
要将值分配给现有的列表位置,必须指定要为其分配值的位置的索引,然后使用赋值运算符(=)来实际分配该值。
请参阅以下代码:
这里我们更新了列表的第一个元素。我们在更新前后显示元素的值,以显示更改。
添加列表元素
在最后一个小节中,我们展示了如何为列表分配一个值,但是只有当该项目已存在于该位置时才适用。如果我们要扩大列表的大小并添加一个新的项目,而不会摆脱我们以前的任何项目呢?我们通过使用该append()功能来做到这一点。
运行此代码时,您将注意到,在调用该函数后,值0将显示在列表的末尾append。我们的名单现在共有6个元素,包括我们的新价值。
删除列表元素
要删除元素,我们只需使用del关键字。看看下面的例子来看看它是如何使用的:
元组
元组类似于列出,因为它们存储不同数据类型的元素。元组和列表之间的主要区别是元组是不可变的。这意味着,一旦你创建了一个元组,你不能更新元组中的任何元素的值,也不能删除一个元素。
在语法方面,元组与列表不同之处在于它们使用变数,而列表使用方括号。即使所有这些差异,元组仍然非常类似于列表。元素被访问相同,元素顺序被保留,就像列表一样。
这里是如何创建一个元组:
randomtuple =("apple","banana",True,"10 ","Mango")
访问元组元素
元组元素的访问方式与列表相同:
在上面的脚本中,我们访问了元组的第二个和第五个元素。如预期的那样,这将导致以下输出:
赋值给元组元素
如前所述,不可能为已经声明的元组元素分配新值。所以你不能这样做:
randomtuple [1] = 10 #不允许此操作
尝试这样的作业会导致以下错误提出:
类型错误:“元组” 对象不不支持的项目分配
删除元组元素
您不能删除单个元组元素。尝试这样做会导致引起错误,就像我们在尝试重新分配元素时显示的那样:
TypeError:"tuple"对象不支持删除项目
但是,您可以使用“del”功能删除元组本身,如以下示例所示:
字典
像列表和元组一样,字典数据结构存储元素的集合。然而,它们与元组和列表有很大不同,因为它们是键值存储。这意味着您可以给每个值一个键(最常用的是一个字符串或整数),可以用于稍后访问该元素。当您拥有大量数据时,访问数据更有效,而不是遍历整个列表以查找元素。
创建字典时,每个键值对都以逗号分隔,所有元素都存储在大括号中。请参阅以下代码:
randomdict = { "Make":"Honda","Model":"Civic","Year":2010,"Color":"Black" }
如果您有很多有关特定事物的信息,例如上面显示的汽车示例,则字典非常有用。当您需要访问集合中的随机元素,并且不想遍历一个巨大的列表以访问它们时,它们也很有用。
访问词典元素
使用其键来访问词典元素。例如,如果要访问第一个元素,则必须使用其键,这在本例中为“Make”。看看下面的例子来看这个语法:
这里我们通过他们的键访问randomdict字典的第一个和第二个元素。输出将如下所示:
输出将有:
本田 奥迪
删除字典元素
删除字典中的元素有三种不同的方法:您可以删除单个元素,您可以删除所有元素,也可以删除整个字典本身。以下示例显示了以下三种方式:
randomdict = { "Make":"Honda","Model":"Civic","Year":2010,"Color":"Black" }#显示完整的字典打印(randomdict)#删除一个元素德尔 randomdict [ "Make" ] 打印(randomdict)#清除整个字典randomdict.clear() 打印(randomdict)#删除字典本身del randomdict 打印(randomdict)
这里我们在执行三个删除操作之后显示字典。不要担心代码中的“#”和继续文本 - 这些是对代码的评论。注释不执行,它们只提供有关代码的信息,并且纯粹是可选的。
以上代码的输出将是:
{ "Color":"Black","Make":"Honda","Model":"Civic","Year":2010 }{ "Color":"Black","Model":"Civic","Year":2010 }{}追溯(最近呼叫 最后): 文件“dict_test.py”,第 16 行,在<module>打印(randomdict)NameError:名字“randomdict” 是没有定义
请注意,由于我们删除了最后的字典,所以抛出一个错误,randomdict表示没有定义。
应用示例
现在我们已经经历了Python中的许多最基本的概念,我们来看看它的用法和使用我们学到的一些简单的应用。
假设你有这么多的汽车,你只是不能跟踪他们,所以我们将创建一个应用程序为你做。通过不断询问您是否要将车辆添加到您的库存中,如果您这样做,那么它将会询问汽车的细节。如果没有,应用程序将打印所有汽车的详细信息并退出。
这是完整的代码,我们将在本节的其余部分中详细介绍:
汽车= []add_inventory = raw_input("添加广告资源?[y / n]")而 add_inventory == "y": #从用户处获取汽车数据make = raw_input("Make:") model = raw_input("Model:") year = raw_input("Year:") miles = raw_input("Miles:") #创建汽车词典对象并保存到 列表 car = { "Make":make,"Model":model,"Year":year,"Miles":miles} 汽车。追加(车) 问用户是否应该继续下去 add_inventory = raw_input("添加广告资源?[y / n]")print("") print("这是你的车:")#显示所有我们的汽车 的 ?汽车S: 打印(“请:” + ? [ “制作” ]) 打印(“型号:” + ? [ “模型” ]) 打印(“年份:” + ? [ "年" ]) print("Miles:" + c [ "Miles" ]) print("")
在我们的代码的第一行,我们创建一个列表,将保存我们所有的汽车的细节。列表中的每个元素都将是一个字典项,它将包含“Make”,“Model”等细节。
第二行代码我们使用一个内置的Python函数raw_input(),通过命令行将给定的文本显示给用户,然后等待响应。用户输入的任何文本都将保存在add_inventory变量中。
然后,我们检查用户是否想通过检查“y”字符来添加库存。如果用户想要添加库存,那么我们raw_input()再次使用该功能来收集有关汽车的信息。一旦我们拥有我们所需要的一切,我们创建一个car变量来存储我们所有的汽车数据的字典。然后car使用该append()方法将此字典对象保存在我们的列表中,您可以记住将该元素添加到列表的末尾。
使用“while循环”,我们不断检查用户是否想要添加更多的汽车到他们的库存。只要用户在“添加广告资源”中输入“y”,这可以继续进行 提示,这正是什么“while循环”是有益的。
当用户最后输入“n”(或不是“y”的任何字符)时,我们将打印出他们的库存的完整列表。这是使用“for-loop”完成的。对于列表中的每个项目,我们将当前项目存储在临时c变量中,并使用其键来检索所有相关的汽车数据,然后我们使用字符串连接(或“添加”)将其打印到屏幕上。这将两个字符串组合在一起,然后再打印到屏幕上。
通过命令行运行此代码可能看起来像这样:
$ python cars.py添加库存?[y / n] y 品牌:保时捷 型号: 911 Turbo 年份: 2017 Miles: 2000 添加库存?[y / n] y 品牌:法拉利 型号: 488 GTB 年份: 2016 英里: 12000 添加库存?[y / n] y 品牌:兰博基尼 型号: Aventador 年份: 2017 英里: 8000 添加库存?[y / n] n这是你的车: 品牌:保时捷 型号: 911 Turbo 年份: 2017 Miles: 2000品牌:法拉利 型号: 488 GTB 年份: 2016 英里: 12000品牌:兰博基尼 型号: Aventador 年份: 2017 英里: 8000
下一步是什么?
本文提供了对Python编程语言的非常基本的介绍。我们只涉及最基本的概念,包括变量,运算符,条件语句,循环等等。
整个文章可能专门针对每个这些主题,所以我建议在每个主题上找到更多的资源。要了解更多信息,我个人建议您参加完整的Python Bootcamp课程:从零开始到Python中的英雄,这将引导您更详细地了解所有最重要的概念。
另一个伟大的是完整的Python大师班,更进一步的是面向对象编程甚至数据库的东西。
一旦你在简单的Python概念中找到脚步,就可以转到更高级的主题,比如面向对象的Python。大多数高级编程应用程序现在是基于面向对象的原则。正如刚刚解释的那样,Python也被广泛应用于Web开发,机器学习,数据科学和微控制器,所以尝试一下一切,看看哪个利基对你最有趣。
谢谢阅读,你离入门其实很近!
关注+转发
感谢大家
- 39天,只要69!招教就是这么简单!
- 只要你够“色”,整整十天4.9折放肆吃垮这家云南菜!
- 佛系限免 | 人生就像一场戏,有点好限免不容易
- 微话题|一声叹息!古代名字超风雅的18城如今都叫啥
- 苦等20年,她终于嫁给心上人,被宠到90岁:只要最后是你,多晚都
- 不觉得她像王菲,但看到90后女歌手窦靖童,我现在有点担心陈
- 京郊藏着一座龙脉上的古镇!风景震撼,鲜为人知!车程只要1个多
- 慢跑对身体没好处?只要方法正确,没有什么不可以
- 180平新房只整了两个卧室,是不是有点太浪费了?
- 这豆包只要蒸一蒸超好吃,做法特简单,老公连吃吃5个,好佩服