学习Linux已经有大致两周了,依然感觉到自己仍然在运维的大门外徘徊。于是我想要找到一个在Linux之外的业余方向,可以以作为枯燥基础学习的调节。没过多久我就发现了Python可以说是钦定的选择,它作为Linux的内置语言,传言风格简洁优美,功能强大。Python老生常谈的缺点是效率不高,哎,没办法,那些底层语言之所以还没有被淘汰就是因为自己更接近底层可以编出更有效率的代码。这对于我这种只接触过c语言的小白而言无所谓,我只关心Python自习之路是否能够顺利进行下去。
 
      我的自学之路大致会按照以下计划走:
         时间分为4周,全部自学,仅提供大纲。适用于Web方向:
             1、Week1:读完《简明Python教程》,适应Python开发环境
             2、Week2:写个爬虫,需要深入了解re、urllib2、sqlite3、threading,Queue等几个模块。需要用上多线程抓取,正则表达式分析,并发资源控制,重新开启程序自动继续抓取和分析
             3、Week3:学习一种Web开发框架,推荐Flask、webpy之类的,学个数据库接口如sqlite3,写个简单的web应用如博客
             4、Week4:给产品做个小功能并走完测试和上线流程,各个时期是不同的
     以上计划我是在知乎上从一个大神那里看到的。理论联系实践,看起来比较合理。从我以前学习c语言的经历所得到的教训就是“纸上得来终觉浅,绝知此事要躬行”。我当时把一本500页的大部头给啃了,理论大师级别,可是实践部分没有跟上,其结果就是一开始还能编写一小段程序,过了两年再提起来c语言基本只剩下一个框架了,所有在理论方面的努力全部白搭。
      再说一下我更新的速度,惯例每周一次。而且,每完成一个阶段性目标后就单独再发一篇博客进行总结。
      接下来就可以跟随我的博客开始惊险刺激的Python从入门到弃坑之旅了。

本次Python相关知识点介绍按照《简明Python教程》分为六部分(嗯,因为我才刚刚看完第六章):
          1.介绍
          2.安装Python
          3.最初的步骤
          4.基本概念
          5.运算符和表达式
          6.控制流

值得思考的一些东西:

有两种方式构建软件设计:一种是把软件做得很简单以至于明显找不到缺陷;另一种是把它做得很复杂以至于找不到明显的缺陷。
    ————C.A.R. Hoare
    明显就是说Python语言大道至简嘛。
    
    获得人生中的成功需要的专注与坚持不懈多过天才与机会。
    ————C.W. Wendte
    此句与诸君共勉。

1.介绍
          总结一下就是,Python大概是世界上最好的语言什么之类的。
      
      2.安装Python
          继续总结,如果你现在在学Linux的话,你只需要记住三句话。
          Linux自带Python。Linux自带Python。Linux自带Python。

Windows用户的自行从Python.org上下载安装,下一步下一步就行了,大概吧。

3.最初的步骤
          从现在开始正经起来。
          现在我只研究Linux命令行模式的Python编程问题。
          此时有两种方式可以念出Hello World的咒语。
          (1)使用带提示符的解释器
          第一步:对着命令行打出  python(启动解释器,进入Python提示符)
          第二步:print 'Hello World'
          具体实现:
          $ python
          Python 2.3.4 (#1, Oct 26 2004, 16:42:40)
          [GCC 3.4.2 20041017 (Red Hat 3.4.2-6.fc3)] on linux2 Type "help", "copyright", "credits" or "license" for more information.
          >>> print 'hello world' hello world
          >>>
          
        如何退出Python提示符?
          Ctrl+D
          (2)使用源文件
          挑选一个编辑器
          我现在只会Nano,不过对付前六章的内容已经够了。
          
          使用源文件
          在nano编辑器中键入如下内容:
          #!/usr/bin/python
          # Filename : helloworld.py
          print 'Hello World'
          
          命名为helloworld.py,保存并退出
          chmod +x helloworld.py
          helloworld.py

输出为:Hello World
        
        这一部分在入门过程我认为是极为重要的,有一定编程基础的看起来才不会卡住。
        0基础的同学请出门左转去仔细看原著,不懂的去百度,谢谢。

4.基本概念
          常量:
              字符串,数 (值不可变)
          数:
              在Python中有4种类型的数————整数、长整数、浮点数和复数。
        字符串:
            字符串是字符的序列。字符串基本上就是一组单词。
            单引号,双引号,三引号,转义符\,自然字符串(前缀r或R),,Unicode字符串,
            字符串是不可变的,按字面意义级联字符串
            注:这部分比较繁琐,不便于在这里列出来。去看原著很容易理解。
        变量:
            变量只是你的计算机中存储信息的一部分内存。与字面 意义上的常量不同,你需要一些能够访问这些变量的方法,因此你给变量名字。
        标识符的命名:
            这部分感觉全世界的要求都一样。
            标识符由字母数字下划线组成,第一个字符必须为字母或下划线,对大小写敏感,
            别和一些系统自带标识符冲突
        数据类型:
            变量可以处理不同类型的值,称为数据类型。基本的类型是数和字符串。
            在后面的章节里面,我们会研究怎么用类创造我们自己的类型。
        对象:
            记住,Python把在程序中用到的任何东西都称为对象 。这是从广义上说的。因此我们不会说“某某东西 ”,我们说“某个对象 ”。

如何编写Python程序 下面是保存和运行Python程序的标准流程。  
         1. 打开你最喜欢的编辑器。
         2. 输入例子中的程序代码。   
         3. 用注释中给出的文件名把它保存为一个文件。我按照惯例把所有的Python程序都以扩展名. py保存。   
         4. 运行解释器命令python program.py或者使用IDLE运行程序。

逻辑行和物理行:
             物理行是你在编写程序时所 看见 的。逻辑行是Python看见的单个语句。
             Python假定每个物理行对应一个逻辑行 。
             默认地,Python希望每行都只使用一个语句,这样使得代码更加易读。
            如果你想要在一个物理行中使用多于一个逻辑行,那么你需要使用分号(;)来特别地标明这 种用法。分号表示一个逻辑行/语句的结束。
            我强烈建议你坚持在每个物理行只写一句逻辑行。仅仅当逻辑行太长的时候,在多于一 个物理行写一个逻辑行。这些都是为了尽可能避免使用分号,从而让代码更加易读。
            \之后回车,可以在多个物理行中写一个逻辑行。被称为明确的行连接。
            相对应的存在暗示的行连接。以后会提到。

缩进:
            空白在Python中是重要的。
            事实上行首的空白是重要的。它称为缩进。
            在逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组。
            这意味着同一层次的语句必须有相同的缩进。每一组这样的语句称为一个块。
            你需要记住的一样东西是错误的缩进会引发错误。
            
            如何缩进
            不要混合使用制表符和空格来缩进,因为这在跨越不同的平台的时候,无法正常工作。
            强烈建议在每个缩进层次使用 单个制表符 或 两个或四个空格 。 选择这三种缩进风格之一。更加重要的是,选择一种风格,然后一贯地使用它,即只使用这一种风格。

总结:
            没办法,概念总是枯燥的。当时我自己看书的时候感觉内容并不多,没想到总结起来还是很烦。在掌握这些概念之后,接着就可以接触更多的实际编程而不会犯很多无谓的错误了。

5运算符与表达式
        简介:
            一个表达式可以分解为运算符和操作数。
        
        运算符:
            +,-,*,/,**,//,%,<<,>>,&,|,^,~,<,>,<=,>=,!=,not,and,or
            这里不用介绍什么优先级,反正记不住。而且实际应用中只需要合理使用()就行了。

表达式:
            例5.1
            #!/usr/bin/python
            # Filename: expression.py
            length = 5
            breadth = 2
            area = length * breadth
            print 'Area is', area
            print 'Perimeter is', 2 * (length + breadth)
            输出:
            $ python expression.py
            Area is 10
            Perimeter is 14
            不用问为什么,照着敲一遍。

总结:
            我们已经学习了如何使用运算符、操作数和表达式——这些是任何程序的基本组成部分。接下 来,我们将学习如何通过语句在我们的程序中使用这些部分。

6.控制流
        在Python中有三种控制流语句——if、for和 while。
        if语句:
            if语句用来检验一个条件,如果条件为真,我们运行一块语句(称为if-块 ),否则我们处理 另外一块语句(称为 else-块 )。 else从句是可选的。
            
            例6.1
            #!/usr/bin/python
            #Filename:if.py
            number=23
            guess=int(raw_input('Enter an integer:'))
            if guess==number:
                    print 'Congratulations,you guessed it.'
                    print '(but you do not win any prizes!)'
            elif guess<number:
                    print 'No,it is a little higher than that'
            else:
                     print 'No,it is a little lower than that'

print 'Done'
            
            输出:
            $ python if.py
            Enter an integer : 50
            No, it is a little lower than that
            Done
            $ python if.py Enter an integer : 22
            No, it is a little higher than that
            Done
            $ python if.py Enter an integer : 23
            Congratulations, you guessed it.
            (but you do not win any prizes!)
            Done
            注:动手去敲一遍很有用,以至于我宁愿删掉内容介绍也不删这部分代码。

while语句:
            只要在一个条件为真的情况下,while语句允许你重复执行一块语句。while语句是所谓循环语 句的一个例子。while语句有一个可选的else从句。

例6.2
            #!/usr/bin/python
            #Filename:while.py
            number=23
            running=True

while running:
                guess=int(raw_input('Enter an integer:'))
                    if guess==number:
                            print 'Congratulations,you guessed it.'
                            running=False
                    elif guess<number:
                            print 'No,it is a little higher than that.'
                    else :
                              print 'No,it is a little lower than that.'
            else:
                     print 'The while loop is over.'

print 'Done'

输出:
            $ python while.py
            Enter an integer : 50
            No, it is a little lower than that.
            Enter an integer : 22
            No, it is a little higher than that.
            Enter an integer : 23
            Congratulations, you guessed it.
            The while loop is over.
            Done

for语句:
            for..in是另外一个循环语句,它在一序列的对象上 递归 即逐一使用队列中的每个项目。
            
            例6.3
            #!/usr/bin/python
            #Filename:for.py
            for i in range (1,5):
                print i
            else:
                print 'For loop is over.'

输出:
            $ python for.py
            1
            2
            3
            4
            The for loop is over

break语句
            break语句是用来终止循环语句的,即哪怕循环条件没有称为False或序列还没有被完全递归, 也停止执行循环语句。
            一个重要的注释是,如果你从for或while循环中 终止 ,任何对应的循环else块将不执行。

例6.4
            #!/usr/bin/python
            #Filename:break.py
            while True:
                s=raw_input('Enter something:')
                if s=='quit':
                    break
                print 'Length of the string is',len(s)
            
            print 'Done'

输出:
            $ python break.py
            Enter something : Programming is fun
            Length of the string is 18
            Enter something : When the work is done
            Length of the string is 21
            Enter something : if you wanna make your work also fun:
            Length of the string is 37
            Enter something : use Python!
            Length of the string is 12
            nter something : quit
            Done
            
        continue语句:
            continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。

例6.5
            #!/usr/bin/python
            #Filename:continue.py
            while True:
                s=raw_input('Enter something:')
                    if s=='quit':
                            break
                    if len(s)<3:
                            continue
                    print 'Input is sufficient length'

输出:
            $ python continue.py
            Enter something : a
            Enter something : 12
            Enter something : abc
            Input is of sufficient length
            Enter something : quit

总结:
            至此我们已经学习了如何使用三种控制流语句——if、while和for以及与它们相关的break和continue 语句。它们是Python中最常用的部分,熟悉这些控制流是应当掌握的基本技能。

讲道理,Python这六章的知识对比起C语言真的算不上什么,感觉花上一周时间足够掌握Python基础,而剩下的就需要结合理论在实践中不断地提升自己了。

python from entry to abandon2的更多相关文章

  1. python from entry to abandon4

    python from entry to abandon系列的收官之作    本篇博客将会介绍<简明Python教程>的最后四章内容.并在最后附上对于本书的个人评价和下阶段自学Python ...

  2. Python Tkinter Entry(文本框)

    Python学习记录--关于Tkinter Entry(文本框)的选项.方法说明,以及一些示例. 属性(Options) background(bg) borderwidth(bd) cursor e ...

  3. python 之Entry

    # Tkinter教程之Entry篇 # Entry用来输入单行文本 from tkinter import * root = Tk() # 创建entry Entry(root, text='inp ...

  4. python tkinter entry

    """小白随笔,大佬勿喷""" '''Entry编辑框 收集数据''' import tkinter as tk import tkinte ...

  5. python from entry to abandon3

    第十章的内容是解决问题————编写一个Python脚本.在我的电脑上因为Zip命令不能正常工作所以无法给出演示.该章给出了很有意义的编程思路,对以后学习和工作都有不错的参考意义,这部分有兴趣的同学还是 ...

  6. python from entry to abandon

    学习Linux已经有大致两周了,依然感觉到自己仍然在运维的大门外徘徊.于是我想要找到一个在Linux之外的业余方向,可以以作为枯燥基础学习的调节.没过多久我就发现了Python可以说是钦定的选择,它作 ...

  7. python entry points 例子

    pbr的介绍不多,http://ju.outofmemory.cn/entry/156745 $ mkdir entry_test; cd entry_test; git init $ mkdir  ...

  8. Python包管理工具setuptools详解及entry point

    1.什么是setuptools? setuptools是Python distutils增强版的集合,它可以帮助我们更简单的创建和分发Python包,尤其是拥有依赖关系的.用户在使用setuptool ...

  9. Python Tkinter 文本框(Entry)

    Python Tkinter 文本框用来让用户输入一行文本字符串. 你如果需要输入多行文本,可以使用 Text 组件. 你如果需要显示一行或多行文本且不允许用户修改,你可以使用 Label 组件. 语 ...

随机推荐

  1. 大臣的旅费---树的直径(dfs)

    很久以前,T王国空前繁荣.为了更好地管理国家,王国修建了大量的快速路,用于连接首都和王国内的各大城市. 为节省经费,T国的大臣们经过思考,制定了一套优秀的修建方案,使得任何一个大城市都能从首都直接或者 ...

  2. python全栈开发 * 27知识点汇总 * 180710

    27   time  os  sys  模块 time 模块 一.表示时间的三种方式 时间戳(timestamp), 元组(struct_time),格式化时间字符串(Format string) 小 ...

  3. Java新帮派——数组

    一.什么是数组: 数组是一个变量,存储相同数据类型的一组数据 声明一个变量就是在内存空间划出一块合适的空间 声明一个数组就是在内存空间划出一串连续的空间 二.数组基本要素: 标识符:数组的名称,用于区 ...

  4. swp文件已存在

    vim编辑某个文件时,提示.xxx.sh.swp文件已存在是因为异常退出后,linux会生成一个swp文件,无论选择什么,下次进入还是会提示ll 命令无法看到文件使用 rm -rf .xxx.sh.s ...

  5. mysql新建数据库、新建用户及授权操作

    1.创建数据库create database if not exists test176 default charset utf8 collate utf8_general_ci; #utf8_gen ...

  6. GIEC2019第六届全球互联网经济大会北京站震撼来袭!

    GIEC2019第六届全球互联网经济大会将于2019年8月26日-27日在北京召开,以“智慧零售数字商业”为主题,将邀请政府官员.企业高管.专家学者共议新形势下如何利人工智能和数字化的商业模式促进零售 ...

  7. OAuth2认证和授权入门

    OAuth2四种授权方式 四种授权方式 OAuth 2.0定义了四种授权方式. 密码模式(resource owner password credentials) 授权码模式(authorizatio ...

  8. 029-IIS配置

    安装IIS.部署网站(发布或者拷贝都可以).修改连接字符串,compilation设为false,删掉cs代码上传文件夹不给执行权限: 在iis管理器中找到上传文件夹,选择属性--执行权限,设置为“无 ...

  9. ServletContext详解(转)

    ServletContext,是一个全局的储存信息的空间,服务器开始,其就存在,服务器关闭,其才释放.request,一个用户可有多个:session,一个用户一个:而servletContext,所 ...

  10. linq 表分组后关联查询

    测试linq,获取有教师名额的学校.比如学校有5个教师名额,teacher数量没超过5个,发现有空额 var query = (from teacher in _repositoryTeacher.T ...