Python从入门到入土

  最近研究了一下Python,名不虚传,确实挺精彩。

  学习一门新的语言,我认为从入门到入土的做法是:下SDK、装IDE、练教程、结合工作应用、不断踩坑进阶、梳理总结

1.下SDK(2.7.15)

   下载地址:https://www.python.org/downloads/release/python-2715/

   如果没有历史包袱,建议用3.X

2.装IDE(PyCharm

  下载地址:https://www.jetbrains.com/pycharm/download/#section=windows

  建议下载专业版,自己百度破解

  JetBrains做的一系列工具都很好用

3.练教程

  菜鸟教程比较适合菜鸟入门:http://www.runoob.com/python/python-tutorial.html

  标识符区分大小写,可以包括英文、数字以及下划线(_),但不能以数字开头(为什么很多语言的标识符都不能以数字开头呢?

 用缩进来写模块,缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,对缩进要求非常严格

 单行注释采用 # 开头,多行注释使用三个单引号(''')或三个双引号(""")

 函数之间或类的方法之间用空行分隔,在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构

Python有5个标准的数据类型,所有数据类型都是类,可以通过 type() 查看该变量的数据类型

  1. Numbers(数字)
    • 数值类型不允许改变,如果改变 Number 数据类型的值,将重新分配内存空间
    • int(有符号整型)
    • long(长整型[也可以代表八进制和十六进制])
    • float(浮点型)
    • complex(复数)
  2. String(字符串)
    • 最常用的数据类型,一些字符串内置函数需要根据应用情况进行掌握
  3. List(列表)
    • []表示,允许更新
  4. Tuple(元组)
    • ()表示,不允许更新,相当于只读列表
    • 只包含一个元素时,需要在元素后面添加逗号

         5.Dictionary(字典)

    • {}表示
    • 每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割
    • 键必须是不可变的,如字符串,数字或元组
    • 创建时如果同一个键被赋值两次,后一个值会被记住
    • get 方法来取键值,如果不存在也不会报错

     is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等,类似传址与传值,可以使用id()函数(用于获取对象的内存地址)进行判断

    不支持 switch 语句,所以多个条件判断,只能用 elif 来实现

    pass 一般用于占位,比如def了一个函数,只有一行:pass

   绝对值函数:

  • 1、abs()是一个内置函数,而fabs()在math模块中定义的。
  • 2、fabs()函数只适用于float和integer类型,而 abs() 也适用于复数。

   内置的time、calendar模块用于处理时间和日历,datetime模块也比较好用

   函数代码块以 def 关键词开头,后接函数标识符名称和圆括号(),函数内容以冒号起始,并且缩进,函数最后可以使用return设置返回值,也可以没有返回值

  如果要给函数内的全局变量赋值,必须使用 global 语句

  导入其他模块使用import,和Java类似,C#用使用using

  import 导入模块,每次使用模块中的函数都要是定是哪个模块:模块.函数

  from…import * 导入模块,每次使用模块中的函数,直接使用函数就可以了,因为已经知道该函数是那个模块中的了

  推荐使用 import 语句,避免使用 from … import,因为这样可以使你的程序更加易读,也可以避免名称冲突

  设置环境变量:set PYTHONPATH=c:\python27\lib;

  包就是文件夹,但该文件夹下必须存在 __init__.py(用于标识当前文件夹是一个包) 文件, 该文件的内容可以为空

  异常使用try...except..else...finally,抛出异常使用raise,而不像其他语言一样用throw

try:
  code    #需要判断是否会抛出异常的代码,如果没有异常处理,python会直接停止执行程序

except:  #这里会捕捉到上面代码中的异常,并根据异常抛出异常处理信息
#except ExceptionName,args:    #同时也可以接受异常名称和参数,针对不同形式的异常做处理

  code  #这里执行异常处理的相关代码,打印输出等


else:  #如果没有异常则执行else

  code  #try部分被正常执行后执行的代码

finally:
  code  #退出try语句块总会执行的程序

 

4.结合工作应用

  运维、爬虫、机器学习

5.不断踩坑进阶

  5.1 中文编码

        如果中文显示乱码,需要在头部指定编码

在文件开头加入 

# -*- coding: UTF-8 -*- 

或

 #coding=utf-8 

 【注】Python3默认使用UTF-8编码,不需要进行处理,所以后来者居上,是有道理的

  5.2 整型池

      Python 中会事先创建一个小型的整形池,范围为 [-5,256],为这些整形开辟好内存空间,当代码中定义该范围内的整形时,不会再重新分配内存地址,所以用is判断两个该范围的数时,返回值是True

  5.4 TRUE与FALSE

     元素除了是 0、空、FALSE 外都算 TRUE

6.梳理总结

  6.1 网上看到的一个基础语法图

 

  6.2 保留字符

  6.3 内置函数

 

posted @ 2018-11-07 11:50  静若清池  阅读(5083)  评论(0编辑  收藏  举报