Python 从Zero到Hero(一)

21CTO社区导读:

各位同学,Python是什么? 是一条蛇?如果是,它也是一条可爱的聪明的小蛇。

它和Java,PHP,Perl等一样,是一门计算机语言。

它的发明者是Guido van Rossum,他是这样描述Python的:

Python是一门高级编程语言。它的核心理念是关注代码和语法和可读性,它允许程序员用少量代码表达编程概念。

对我来说,学Python的第一理由是,它是一个好看的编程语言,写代码就像写文章一样自然表达。

还有一个原因是,我们可以用Python很好的完成工作,比如数据挖掘、Web开发和机器学习等领域都能做得很棒。 Quora,Google,Pinterest和Spotify都在用Python进行后端Web开发。国内如Douban,Toutiao等公司也是使用Python做后端应用开发。

有一句话:“人生苦短,我用Python”。用了Python,上下楼不费劲儿,对得起咱这张脸,我们一起来了解它。

Python基础

1 变量

您可以将变量看作是一个存储值的单词——就是这么简单。

在Python中,定义一个变量并给它赋一个值是很容易的。我们想象一下,把数字1存储到一个名叫one的变量中。

我们这样来做,来看如下代码:

one = 1

是不是很简单?我们这样就将值1分配给了变量one。

two = 2

some_number = 10000

你也可以给其它任何变量赋值。比如上面的,变量“two”存储了整数2,“some_number”存储了整数10000.

除了保存整数外,我们还可以使用布尔值(true/false),字符串,浮点数等多种数据类型。

#布尔值

true_boolean = True

false_boolean = False

#字符串

my_name = “Raymond”

#浮点型

book_price = 15.80

2 控制流程:条件处理

使用if 语句来评估表达式是True还是False。如果它是True,它会执行if语句体里的内容。如下代码:

if True:

print(“Hello Python If”)

print(“2 if greater than 1”)

因为2大于1,所以执行了print代码。

如果if 的表达式为false,则会执行else语句。

print(“1is greater than2”)

else:

print(“1 is not greater than 2”)

1不会大于2,所以else语句中的代码将被执行之。

你也可以使用 elif 语句:

print("1 is greater than 2")

elif 2 > 1:

print("1 is not greater than 2")

else:

print("1 is equal to 2")

3 循环/迭代器

在Python中,我们可以用几种不同形式进行迭代循环。我们将介绍两个while和for。

While循环:当条件为True时,语句体内的代码将被执行。所以,此代码将打印出数字1到10。

num = 1

while num

print(num)

num+= 1

while需要一个“循环条件”。如果条件保持为True,它将继续迭代。在这个代码例子中,当num 是11,循环条件等于 False。

我们来看一个基础代码,可以更好的理解它:

loop_condition = True

while loop_condition:

print(“Loop Condition keeps: %s”%(loop_condition))

loop_condition = False

循环条件是True,所以它保持迭代,直到我们将它设置为False。

对于循环:把变量“num”应用于语句块,“for”语句将继续迭代。此代码将继续打印与前面代码类似的结果:1到10。

for i in range(1, 11):

print(i)

我们看到,很简单的代码。功能是范围从1开始,到第11个数字,打印完成。

4列表:集合 | 数组 | 数据结构

我们一起考虑一下,我们想把整数1存储在一个变量中,但是我们想存储2,3,4,5…这些数值想都放在一个变量里怎么办?

我们当然可以用另一种方法来存储想要的整数,但是不能是数以百万计的变量。 你猜对了,有另一种方法来存储它们。

列表List就是一个用来保存一组数据的集合,像我们想要的这些整数一样。我们这样使用它:

my_integers = [1, 2, 3, 4, 5]

是不是很简单。我们一起创建了一组数据并把它存储在my_integer数组上。

我们该怎样从数组中获取值呢? 挺好的问题。 List有一个叫做索引的概念。第1个元素的索引值为0,第2个为1,依此类推,相信你明白了。

为了更清晰,我们可以用索引 来表示数组和每个元素。我把它画出图来:

使用Python的语法,也挺好理解:

my_integers = [5, 7, 1, 3, 4]

print(my_integers[0]) # 5

print(my_integers[1]) # 7

print(my_integers[4]) # 4

我们也许不想只存储整数,也许只想存储字符串,就象亲友的名字列表一样。

relatives_names = [

"Toshiaki",

"Juliana",

"Yuji",

"Bruno",

"Kaio"

]

print(relatives_names[4]) # Kaio

它的工作方式与整数相同。

我们刚刚学习了List索引如何工作。下面向大家介绍如何将元素添加到List数据结构中(一个元素添加到列表)。

在Python中,将一个新值添加到List的常见方法是append。我们一起来看它是如何工作的:

bookshelf = []

bookshelf.append("The EffectiveEngineer")

bookshelf.append("The 4 Hour WorkWeek")

print(bookshelf[0]) # The EffectiveEngineer

print(bookshelf[1]) # The 4 Hour Work Week

append语句简直是超级简单。你只要将元素(如“有效率的工程师”)做为append参数。

到此为止,我们对Lists列表的理解已经够了。接下来我们谈下一个数据结构。

5 字典 Dictionary:键-值数据结构

现在,我们知道列表Lists是使用整数索引的。但是有时候我们不想用整数作为索引呢?当然,Python提供了一个数据结构,可以让索引是数字、字符串或其它 数据类型。

让我们来了解一下Dictionary字典数据结构。Dictionary是键值对的集合。下面是它的样子:

dictionary_example = {

"key1": "value1",

"key2": "value2",

"key3": "value3"

}

键名指向索引的值。我们怎么访问Dictionary中的值?你猜对了,我们用Key,我们来试试看:

dictionary_ex = {

"name": "Raymond",

"nickname": "Luoyi",

"nationality": "China"

}

print("My name is %s"%(dictionary_ex["name"])) # My name is Raymond

print("But you can call me %s"%(dictionary_ex["nickname"])) # But you can call me Luoyi

print("And by the way I'm %s"%(dictionary_ex["nationality"])) # And by the way I'm China

我创建了一个关于我自己的Dictionary,包括我的名字,昵称和国籍,都以键名的方式保存在Dictionary字典中。

我们已经一起学习了使用索引来访问List,我们也使用索引(Dictionary上下文的键)来访问保存在Dictionary的值。

在这个例子中,我引用了Dictionary存储的值打印一个关于我的短语。很简单对吧?

Dictionary另一个很酷的事是,我们可以使用任何东西做为值。创建了Dictionary,我们想添加一个key为“age”和我真正年龄的整数值:

dictionary_ex = {

"name": "Raymond",

"nickname": "Luoyi",

"nationality": "China",

"age": 38

}

print("My name is %s"%(dictionary_ex["name"])) # My name is Raymond

print("But you can call me %s"%(dictionary_ex["nickname"])) # But you can call me Luoyi

print("And by the way I'm %i and%s" %(dictionary_ex["age"], dictionary_tk["nationality"]))# And by the way I'm China

这里,我们有一个键(key)和值(24),做为字符串的键和整数作为值。

和我们对Lists所做的一样,我们学习如何将元素添加到Dictionary。Key指向一个值是Dictionary的重要组成部分。当我们添加元素时,也是如此:

dictionary_ex = {

"name": "Raymond",

"nickname": "Luoyi",

"nationality": "China"

}

dictionary_ex['age'] = 24 #add new item

print(dictionary_ex) # {'nationality': 'China', 'age': 38, 'nickname': 'Luoyi', 'name': 'Raymond'}

我们只需给一个Dictionary分配一个key和值。没有什么复杂的,对吧?

作者:21CTO社区

说明:本站原创作品。Python开发系列文章,敬请期待。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180113B0R6MY00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券