献给第一次接触python的学者

(1)python是什么?
python的标志。python的徽标是python软件基金会的商标。
python是以英国喜剧团体monty python的名字命名的,是一种解释性的、交互式的、面向对象的编程语言。它的灵活性让它可以做很多事情,无论大小。python可以用来编写简单的程序,但它也拥有创建复杂的大型企业解决方案所需的全部能力。python的一些使用方式包括:
桌面图形应用程序开发,包括游戏;
数据的数学和科学分析;而且,
网络和互联网的发展。
python在计算机编程领域的存在随处可见。例如,python在一些世界上最大的互联网站点中被使用,比如reddit、dropbox和youtube。流行的python web框架django支持instagram和pinterest。卢卡斯电影公司的获奖视觉特效公司,工业光与魔术,使用python帮助使他们的魔术成真。
人们很容易忘记python有多么强大,因为它很容易学习。
python的属性
python是……
强类型。例如,它强制数据类型,这样您就不能将字符串和整数连接起来。
动态,隐式类型。因此,您不必显式声明变量数据类型。数据类型是在运行时强制执行的。
大小写敏感的。例如,令牌和令牌是两个不同的变量。
面向对象的。一切都是对象。
(2) python -预科
python是免费的开源软件,可以在linux、mac、windows和其他各种平台上运行(总共21个)。它预装在mac和大多数linux发行版上;但是,您可能需要下载最新的版本(见下文)。
要检查您的版本,请打开终端并运行以下命令:
shell
python -v
选择python版本
对于新手和经验丰富的程序员来说,在python 2或3之间做出决定可能会令人困惑。幸运的是,两者之间的语法差异很小,你可以在你的计算机上运行这两个版本。
目前,python有两个主要版本 - 2.x和3.x.
在获得新特性和功能方面,只有3.5.x版正在积极开发中,而python 2.7.x以及3.2.x到3.4.x仍在积极维护。
哪个版本适合您?嗯,这取决于你。老实说,在这个早期阶段,两者之间几乎没有什么区别,所以要么选择就足够了。另外,一旦你学会了一个,学习另一个并不困难。
一般来说,如果你刚刚开始学习python,请使用3.4.x,因为它是一个更好的版本,因为它增加了一些功能以及大量的bug修复和改进。但是,2.7x对第三方库的支持更多。如果您知道您需要使用尚未移植到3.4.x版本的库,那么最好从2.7x开始。
本系列中的示例将在3.4.2版本中显示,该版本是撰写时的当前版本。也就是说,大多数示例都适用于任何一个版本,因为添加到3.4.x的许多功能和更新也添加到2.7.x.我们将讨论您出现时应该注意的任何差异。
(3)如何获得python?
无论您的操作系统是什么,您都可以从python软件基金会(python software foundation, psf)下载python。获取特定于您的操作系统和处理器的版本(32位或64位)。
使用说明:
mac:我强烈建议使用自制程序来安装和管理不同版本的python。看看这里的说明。您还可以从psf下载python。
linux:同样,python也包含在各种linux版本中。如果需要,请确保使用包管理器升级到最新版本。
windows:直接从psf下载python。
windows用户:确保在安装过程中选择将python添加到系统路径的选项:
(从下拉列表中选择“将安装在本地硬盘上”选项。)
(from the drop-down select the option, “will be installed on local hard drive”.)
(4)确认python安装
让我们快速进行健全性检查,以确保正确安装python。
python shell
打开python interactive shell:
mac:打开终端并运行:python或python3,具体取决于您的安装。
linux:打开终端并运行:python
windows:如果只安装了一个版本的python,只需运行python。 如果您同时安装了python 2.7和python 3,请运行python for python 2.7和/或py -3 for python 3。
windows用户:确保您的帐户具有管理权限:右键单击命令提示符图标,然后选择“以管理员身份运行”,在提升级别运行命令提示符。
交互式python shell应该打开,您的命令提示符或终端窗口应该类似于:
python
python 3.4.1 (v3.4.1:c0e311e010fc, may 18 2014, 00:54:21)
[gcc 4.2.1 (apple inc. build 5666) (dot 3)] on darwin
type help, copyright, credits or license for more information.
当你在这里的时候,你不妨运行你的第一行代码……
python 2:
>>> print python is fun!
python 3:
>>> print(python is fun!)
如果你运行的是python2版。在python 3.x中,print命令是一个语句而不是函数。
您应该看到:
python is fun!
就是这样:你刚刚编写了你的第一个python程序!每次输入一行,python就立即执行语句,在引号之间显示值。
完成之后,可以使用exit()离开python shell。或者:
mac和linux用户:ctrl+d,然后按回车键
windows用户:ctrl+d,然后按回车键
保持终端或命令提示符打开。我们还有很多事情要做!让我们在运行python原语时继续使用shell。
(5)语言原语
在本节中,我们将研究python编码原语——变量、内置数据类型、注释、语法和语义。
变量
变量是数据的容器。声明它们的语法是:variable_name = variable_value。虽然您可以为变量命名任何东西(除了一些保留的关键字),但是您应该使用直观的命名方案。变量名应该提供一些指示,说明赋给它的值是什么。
例如,许多新编程人员使用简单的变量名,如x和y。相反,如果你有两个数字——比如1和52——使用变量名num1和num2,而不是x和y。这样,当其他人阅读你的程序时,他们可以有根据地猜测num1和num2可能是某种数字。当你写程序的时候,想想别人,还有你未来的自己。你未来的自己会感谢你的。
内置的数据类型
python有许多内置的数据类型,比如数字(整数、浮点数、复数)、字符串、列表、元组和字典。
每一个都可以使用:
运营商
功能
数据类型的方法
一定要把每个例子都和我一起打出来。
数字
数字可以是整数、浮点数、布尔值或复数。前三种是最重要的:
整数是整数- 1 2 22 476 -99999
浮点数有小数点- 1.0、2.22、22.098、476.1、-99999.9
布尔值表示真或假(或1或0),它们表示的数据只能是一种或另一种。
操纵数字
运营商
你见过运营商。它们就像加法(或连接)和减法,就像你在小学学到的。
python
>>> 2 + 3 # addition
5
>>> num1 = 10
>>> num2 = 9.99
>>> num3 = num1 + num2
>>>num3
19.990000000000002
>>> 8 - 5 # subtraction
3
>>> 2 * 6 # multiplication
12
>>> 12 / 3 # division
4.0
>>> 7 % 3 # modulus (returns the remainder from pision)
1
>>> 3 ** 2 # raise to the power
9
让我们来测试一下您的预代数技能,看看比较,它计算布尔值——例如,真或假(或1或0)。
>>>2>> 4 >10
false
>>> 3 >= 3
true
>>>
>>> 5 == 6
false
>>> 6 != 9
true
功能
python为您提供了许多用于操作整数的内置函数。这些对你来说总是可行的。请注意:这些函数可以用于任何数据类型。python标准库中也有一些模块可用,比如math。要使用与这些模块相关的函数,首先必须导入模块。不仅仅是这样。现在,让我们来看几个内置函数的例子。
浮点()——给定一个整数,这个函数返回一个浮点数。
python
>>>float(9)
9.0
>>>float(-99999)
-99999.0
int()——给定一个浮点数,这个函数返回一个整数。这个函数不会将输入(上限)四舍五入到最接近的整数——它只会在小数点(地板)后抛出任何东西并返回数字。10。6的输入返回10,而不是11。同样,3.25返回3。
python
>>>int(10.6)
10
>>>int(3.25)
3
数据类型的方法
除了函数之外,还有许多数据类型方法与每种类型的数字相关联。
is_integer() -测试一个浮点数是否有限。
python
>>>(10.0).is_integer()
true
>>>(10.1).is_integer()
false
字符串
字符串是用单引号或双引号声明的文本行:
>>> simple_string = hey!
>>>simple_string
'hey!'
>>> hello world!
'hello world!'
>>> escaped = 'can\'t'
>>>escaped
can't
>>> not_escaped = can't
>>>not_escaped
can't
操作字符串
运营商
像数字一样,你可以连接字符串(字符串连接):
>>> happy + + birthday
'happy birthday'
>>> my name is + john
'my name is john'
功能
让我们来看看几个适合用于字符串操作的函数:
len()——给定一个字符串,这个函数返回它的长度。
>>>len(name_string)
15
slice()——给定一个开始和结束值,就可以访问一组或单个字符。
>>>print(hello[2])
l
>>>print(hello[3])
l
>>>print(hello[0])
h
>>>print(hello[0:2])
he
数据类型的方法
虽然我们将只讨论一些数据类型方法,但请务必检查完整的python文档,因为您应该了解许多重要的函数。
string. capital() -返回首字母大写的字符串。
>>> lower_case_string = michael
>>>lower_case_string.capitalize()
'michael'
>>>(empire).capitalize()
'empire'
format()——可以很容易地将值格式化为字符串。
>>> name = john doe
>>> greeting = my name is {}.format(name)
>>>greeting
'my name is john doe'
>>>
string.strip() -返回去掉前、后空白的字符串。
>>> are_you_happy = yes
>>>are_you_happy.strip()
'yes'
列表
列表(在几乎所有其他编程语言中都称为数组)将各种类型的数据组合在一起。
create_a_list =[]
numbers_list = [1,2,3]
strings_list = [spam, eggs, cheese]
mixed_list = [hello, [1,2,3], false]
如上所示,列表可能包含任何数据类型(您也可以混合和匹配),包括其他列表或什么都不包含。您可以访问列表的某些部分,就像带索引的字符串一样。语法是一样的:
列表
列表(在几乎所有其他编程语言中都称为数组)将各种类型的数据组合在一起。
create_a_list =[]
numbers_list = [1,2,3]
strings_list = [spam, eggs, cheese]
mixed_list = [hello, [1,2,3], false]
如上所示,列表可能包含任何数据类型(您也可以混合和匹配),包括其他列表或什么都不包含。您可以访问列表的某些部分,就像带索引的字符串一样。语法是一样的:
您可以从列表的开头或结尾访问元素:
> > >numbers_list[0]
1
> > >numbers_list(0:1)
[1]
> > >numbers_list[0:2]
[1,2]
看看你是如何通过访问元素来创建一个新列表的:
>>> numbers_list = [1, 2, 3, 200]
>>> new_list = numbers_list[0:3]
>>>new_list
[1, 2, 3]
倒数最后一项的负索引:
>>> strings_list = [batman, superman, iron man]
>>>strings_list[-1]
'iron man'
如果将一个列表嵌套在另一个列表中,可以使用多个索引访问内部列表:
>>> mixed_list = [hello world, [4, 5, 6], false]
>>>mixed_list[1][2]
6
操作列表
运营商
列表可以连接:
>>> fruits = [apples, grapes, oranges]
>>> veggies = [corn, kale, mushrooms]
>>> grocery_list = fruits + veggies
>>>grocery_list
['apples', 'grapes', 'oranges', 'corn', 'kale', 'mushrooms']
功能
通常,您可以将列表看作字符串—只有每一块数据是一个元素。这在实践中意味着什么?你在字符串上使用的函数也可以用于列表。
len()——给定一个列表,这个函数返回它的长度。
>>> numbers_list = [1,2,3,200]
> > >len(numbers_list)
4
slice()——给定一个开始和停止值,就可以访问一组元素。
>>> hello = [h, e, l, l, o]
>>>hello[2]
'l'
>>>hello[3]
'l'
>>>hello[0]
'h'
>>>hello[0:2]
['h', 'e']
数据类型的方法
再次检查python文档以查看所有可用的列表方法。
list.append()——用于将项添加到列表的末尾
>>> fruits = [apples, grapes, oranges]
>>>fruits.append(blueberries)
>>>fruits
['apples', 'grapes', 'oranges', 'blueberries']
list.sort() -对这个列表进行排序
>>>fruits.sort()
>>>fruits
['apples', 'blueberries', 'grapes', 'oranges']
pop()——给定一个索引值,从列表中删除一�...