一、Python语言的入门

 

 

Python语言的入门

 

----From a high school student's view tolearn Python

 关键字:高中生学编程 Python语言 计算机语言


一、学习之前的心理准备


学习Python或者说其它任何的计算机语言之前应该了解以及具备的能力:

1.       数学基础,其实我发现很多的程序就像是一个个小的算法组合起来的,而且在编程序时对于逻辑思维的能力要求比较高,因为程序是按照人设计的流程来运行的,而且只会遵守代码的真实意图,所以大家在编程时千万不能自己先晕了…..

2.       逻辑思维能力

编写程序的目的,一是解决数学计算,比如象我们使用的计算器就是最简单的例子;二是完成一些事务性的操作,比如我们日常见到的售票系统,银行使用的存取款系统;无论是计算还是事务性流程,都会有因果关系以及各种条件的判断,这些说的高深一点就是逻辑。

3、总结归纳的能力

计算机虽然具有很强的计算能力,可是他并不能够自动的解决我们的问题,比如我们奥数中的“鸡兔同笼”问题,你告诉计算机头多少、腿多少,让它告诉你鸡兔各有多少?除非你百度,计算机自己是不会算的;这就需要我们,通过分析问题,建立相应的数学模型:

1、        设头的总数为n1,腿的总数为n2

2、        如果按照头的数量,用n2减去n1*2,剩下的都是两条腿的兔子的腿了

3、        所以兔子的数量n3=(n2-2*n1)/2

4、        如果n3为整数,那么鸡的数量n4=n1-n3

5、        否则无解

我们按照就能够编写出解决问题的程序,然后你只要输入头的数量和腿的数量,现在计算机就可以很智能的替你解决鸡兔同笼的问题了。

 

 

二、为什么选择Python

 

对于我们初学者来说,最重要的还是简单,当然有技术含量也是必须的(可以显摆J)。简单体现在哪呢?

1、   Python语言有一个交互式的开发环境,因为Python是解释运行,这大大节省了每次编译的时间,满足我们开始编程时的急迫心态,稍微写点东西就期望马上看到结果。

2、    Python语法简单,且内置有几种高级数据结构,如字典、列表等,使得使用起来特别简单。

3、    Python也被称为是一门清晰的语言。【以下内容体会还不是很深刻J】因为它的作者在设计它的时候,总的指导思想是,对于一个特定的问题,只要有一种最好的方法来解决就好了。这在由TimPeters写的python格言里面表述为:Thereshould be one-- and preferably only one --obvious way to doit.虽然我不知道其他的语言是什么样子,但是Python确实是一门十分简单的语言,每行代码就几乎和平时说的话没什么区别。

4、    Python语言目前也算比较流行的语言,适用面非常广泛,并非“小语种”,完全可以满足显摆的要求

 

三、Python语言的局限

 

虽然Python语言是一个非常成功的语言,但是也有必要明白它的局限性。

1.       运行效率低下

目前为止,Python语言可以说是所有主流脚本语言中速度最慢的。(是这样么?待考.)这与其脚本引擎的设计思路有关。如果你的应用对于速度有着较高的要求,就要考虑Python是否能满足需要。不过这一点可以通过使用C编写关键模块,然后由Python调用的方式加以部分解决。(……我也不太懂)

2. 独特的语法

这也许不应该被称为局限,但是它用缩进来区分语句关系的方式还是给很多初学者带来了困惑。在我最开始学习Python的时候,经常是写一大堆的if语句, 而且因为每个语句都需要缩进,导致我经常就把缩进的层级搞混导致程序无法运行。

不过如果在写程序的时候把每个分支和循环的层级都弄懂的话,还是很大程度上可以避免的。

3. 无类型

作为一种动态语言,随时随地创建和使用变量是Python给我们带来的巨大的便利。但是它也会使得程序不严谨,某些错误只有在运行中才可能出现。所以我每次在写完一个小的project的时候都需要运行好几次来进行测试, 从而找出里面的错误

 

四、python语言的神奇之处

 

python语言之所以被大家公认为很cool的一门语言,在于它提供的一些神奇的基础资源库,在后面的介绍中会具体的进行介绍,这里简单的给大家一个简单的例子。

 

随机产生福利彩票双色球的号码

双色球由红球和蓝球两部份组成,从33个红球号码(01~33)中选择6个,再从16个蓝球号码(01~16)中选择1个。

以下语句就可简洁的实现双色球的选号:

>>>import random

>>>random.sample(range(1,34),6)+random.sample(range(1,17),1)

[16, 22,28, 3, 19, 15, 2]

要是用C语言来实现,你知道会有多复杂吗?

以下是从百度知道中搜到的一个336的实现代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

 

#include <stdlib.h>

#include <stdio.h>

##include <stdlib.h>

#include <stdio.h>

#include <time.h> 

#define MAX 6

int main( void)

{

        int number[MAX] = {0};

        int i,j;

        srand()((unsigned)time(NULL)); 

        for(i = 0; i < MAX;i++)

        {

                  number[i] = rand()()% 33; 

                  while(number[i]==0)

                           number[i] = rand()() % 33;

                  //printf("%d ", number[i]);

        }

        while(1)

        {

                  for(i=0;i<6;i++)

                           for(j=i+1;j<6;j++)

                           {

                                    if(number[i]==number[j])

                                    {

                                              number[j]=rand() % 33;

                                              i=-1;

                                    }

                           }

                  if(i==6)

                           break;

        }

for(i= 0; i < MAX;i++)

        printf("%d ", number[i]);

printf("\n");

return 0;

}

 

 

虽然我们不能够以此而得出结论,但python的便利性确实是公认的。

 

五、本篇小结

 

总体来说,python是一门全能的语言,如果对于程序的性能没有苛刻的要求,对于除系统底层的操作之外的所有事情都可以处理;

当然,现在还不能够心急,还需要带大家了解一些基本的计算机方面的知识,这样便于后面可以更好地深入学习。

 

为了便于大家比较系统的学习,我还会推荐一些美国大学的公开课资源,同时,我也会截取其中的一些视频,作为补充。

 

之后我会详细的介绍如何搭建学习环境,真正的开启我们学习的大门。


有兴趣的话,大家查一查python的英文到底是什么意思,相信大家一定很好奇一、Python语言的入门


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值