快速入门:异常钟学会Python语言&工具

来源:互联网 / 作者:SKY / 2017-12-01 05:45 / 点击:
假设你但愿进修Python这门说话,却苦于找不到一个简短而全面的入门教程。那么本教程将耗费异常钟的时刻带你走入Python的大门。本文的内容介于教程(Toturial)和速

【感激@刘见康 的翻译,@熊崽Kevin 校稿。假如其他伴侣也有不错的原创或译文,可以实行投递到伯乐头条。】

初试牛刀

假设你但愿进修Python这门说话,却苦于找不到一个简短而全面的入门教程。那么本教程将耗费异常钟的时刻带你走入Python的大门。本文的内容介于教程(Toturial)和速查手册(CheatSheet)之间,因此只会包括一些根基观念。很显然,假如你但愿真正学好一门说话,你照旧必要亲身下手实践的。在此,我会假定你已经有了必然的编程基本,因此我会跳过大部门非Python说话的相干内容。本文将高亮表现重要的要害字,以便你可以很轻易看到它们。其它必要留意的是,因为本教程篇幅有限,有许多内容我会直接行使代码来声名加以少许注释。

Python的说话特征

Python是一门具有强范例(即变量范例是逼迫要求的)、动态性、隐式范例(不必要做变量声明)、巨细写敏感(var和VAR代表了差异的变量)以及面向工具(统统皆为工具)等特点的编程说话。

获取辅佐

你可以很轻易的通过Python表明器获取辅佐。假如你想知道一个工具(object)是怎样事变的,那么你所必要做的就是挪用help(

1

2

3

4

5

6

7

8

9

10

11

 

>>> help(5)

Help on int object:

(etc etc)

 

>>> dir(5)

['__abs__', '__add__', ...]

 

>>> abs.__doc__

'abs(number) -> number

 

Return the absolute value of the argument.'

 

语法

Python中没有逼迫的语句终止字符,且代码块是通过缩进来指示的。缩进暗示一个代码块的开始,逆缩进则暗示一个代码块的竣事。声明以冒号(:)字符竣事,而且开启一个缩升级别。单行注释以井号字符(#)开头,多行注释则以多行字符串的情势呈现。赋值(究竟上是将工具绑定到名字)通过等号(“=”)实现,双等号(“==”)用于相称判定,”+=”和”-=”用于增进/镌汰运算(由标记右边的值确定增进/镌汰的值)。这合用于许大都据范例,包罗字符串。你也可以在一行上行使多个变量。譬喻:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

 

>>> myvar = 3

>>> myvar += 2

>>> myvar

5

>>> myvar -= 1

>>> myvar

4

"""This is a multiline comment.

The following lines concatenate the two strings."""

>>> mystring = "Hello"

>>> mystring += " world."

>>> print mystring

Hello world.

# This swaps the variables in one line(!).

# It doesn't violate strong typing because values aren't

# actually being assigned, but new objects are bound to

# the old names.

>>> myvar, mystring = mystring, myvar

 

数据范例

Python具有列表(list)、元组(tuple)和字典(dictionaries)三种根基的数据布局,而荟萃(sets)则包括在荟萃库中(但从Python2.5版本开始正式成为Python内建范例)。列表的特点跟一维数组相同(虽然你也可以建设相同多维数组的“列表的列表”),字典则是具有关联相关的数组(凡是也叫做哈希表),而元组则是不行变的一维数组(Python中“数组”可以包括任何范例的元素,这样你就可以行使殽杂元素,譬喻整数、字符串或是嵌套包括列表、字典或元组)。数组中第一个元素索引值(下标)为0,行使负数索引值可以或许从后向前会见数组元素,-1暗示最后一个元素。数组元素还能指向函数。来看下面的用法:

1

2

3

4

5

6

7

8

9

10

 

>>> sample = [1, ["another", "list"], ("a", "tuple")]

>>> mylist = ["List item 1", 2, 3.14]

>>> mylist[0] = "List item 1 again" # We're changing the item.

>>> mylist[-1] = 3.21 # Here, we refer to the last item.

>>> mydict = {"Key 1": "Value 1", 2: 3, "pi": 3.14}

>>> mydict["pi"] = 3.15 # This is how you change dictionary values.

>>> mytuple = (1, 2, 3)

>>> myfunction = len

>>> print myfunction(mylist)

3

 

你可以行使:运算符会见数组中的某一段,假如:左边为空则暗示从第一个元素开始,同理:右边为空则暗示到最后一个元素竣事。负数索引则暗示从后向前数的位置(-1是最后一个项目),譬喻:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

 

>>> mylist = ["List item 1", 2, 3.14]

>>> print mylist[:]

['List item 1', 2, 3.1400000000000001]

>>> print mylist[0:2]

['List item 1', 2]

>>> print mylist[-3:-1]

['List item 1', 2]

>>> print mylist[1:]

[2, 3.14]

# Adding a third parameter, "step" will have Python step in

# N item increments, rather than 1.

# E.g., this will return the first item, then go to the third and

# return that (so, items 0 and 2 in 0-indexing).

>>> print mylist[::2]

['List item 1', 3.14]

 

字符串

Python中的字符串行使单引号(‘)或是双引号(“)来举办标示,而且你还可以或许在通过某一种标示的字符串中行使其它一种标示符(譬喻 “He said ‘hello’.”)。而多行字符串可以通过三个持续的单引号(”’)或是双引号(“”")来举办标示。Python可以通过u”This is a unicode string”这样的语法行使Unicode字符串。假如想通过变量来添补字符串,那么可以行使取模运算符(%)和一个元组。行使方法是在方针字符串中从左至右行使%s来指代变量的位置,可能行使字典来取代,示譬喻下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

 

>>>print "Name: %s\

Number: %s\

String: %s" % (myclass.name, 3, 3 * "-")

Name: Poromenos

Number: 3

String: ---

 

strString = """This is

a multiline

string."""

 

# WARNING: Watch out for the trailing s in "%(key)s".

>>> print "This %(verb)s a %(noun)s." % {"noun": "test", "verb": "is"}

This is a test.

 

流程节制

阅读延展

1
3