最近研究了一下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

  1. try
  2. code #需要判断是否会抛出异常的代码,如果没有异常处理,python会直接停止执行程序
  3.  
  4. except: #这里会捕捉到上面代码中的异常,并根据异常抛出异常处理信息
  5. #except ExceptionName,args: #同时也可以接受异常名称和参数,针对不同形式的异常做处理
  6.  
  7. code #这里执行异常处理的相关代码,打印输出等
  8.  
  9. else #如果没有异常则执行else
  10.  
  11. code #try部分被正常执行后执行的代码
  12.  
  13. finally
  14. code #退出try语句块总会执行的程序

4.结合工作应用

运维、爬虫、机器学习

5.不断踩坑进阶

5.1 中文编码

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

  1. 在文件开头加入
  2.  
  3. # -*- coding: UTF- -*-
  4.  
  5.  
  6. #coding=utf-

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

5.2 整型池

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

5.4 TRUE与FALSE

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

6.梳理总结

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

6.2 保留字符

6.3 内置函数

Python从入门到精通的更多相关文章

  1. Python从入门到精通视频(全60集) ☝☝☝

    Python从入门到精通视频(全60集) Python入门到精通 学习 教程 首先,课程的顺序需要调整:一和三主要是介绍学习和布置开发环境的,一介绍的是非VS开发,三介绍的是VS开发.VS2017现在 ...

  2. Python从入门到精通视频(全60集)✍✍✍

    Python从入门到精通视频(全60集)  整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身没问题,大家看 ...

  3. Python 从入门到精通:一个月就够了

    毫无疑问,Python 是当下最火的编程语言之一.对于许多未曾涉足计算机编程的领域「小白」来说,深入地掌握 Python 看似是一件十分困难的事.其实,只要掌握了科学的学习方法并制定了合理的学习计划, ...

  4. 【Python从入门到精通】(九)Python中字符串的各种骚操作你已经烂熟于心了么?

    您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦. 本文将重点介绍Python字符串的各种常用方法,字符串是实际开发中经常用到的,所有熟练的掌握它的各种用法显得尤为重要. 干货满满,建议收藏,欢迎大 ...

  5. 【Python从入门到精通】(二十五)Python多进程的使用

    您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦. 本篇重点介绍Python多进程的使用,读者朋友们可以将多进程和多线程两者做一个对比学习. 干货满满,建议收藏,需要用到时常看看. 小伙伴们如有问题 ...

  6. ❤️【Python从入门到精通】(二十七)更进一步的了解Pillow吧!

    您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦. 进一步介绍Pillow库的使用,详细了解 干货满满,建议收藏,需要用到时常看看. 小伙伴们如有问题及需要,欢迎踊跃留言哦~ ~ ~. 前言 本文是 ...

  7. Python 从入门到精通 全程最佳实现梳理

    零零星星的时间,持续完善中...... 1.一些基础的必要信息归纳 Python 官网 www.python.org 发明者 吉多·范罗苏姆 发行时间 1991年,​26年前 编程泛型 多泛型.面向对 ...

  8. 《跟老齐学Python:从入门到精通》齐伟(编著)epub+mobi+azw3

    内容简介 <跟老齐学Python:从入门到精通>是面向编程零基础读者的Python入门教程,内容涵盖了Python的基础知识和初步应用.以比较轻快的风格,向零基础的学习者介绍一门时下比较流 ...

  9. 【ArcGIS遇上Python】ArcGIS Python批处理入门到精通实用教程目录

    目录 1. 专栏简介 2. 专栏地址 3. 专栏目录 1. 专栏简介 Python语言是目前很火热的语言,极大的促进了人工智能发展.你知道在ArcGIS中也会有python的身影吗?事实上,在ArcG ...

随机推荐

  1. 《机器学习实战(基于scikit-learn和TensorFlow)》第四章内容的学习心得

    本章主要讲训练模型的方法. 线性回归模型 闭式方程:直接计算最适合训练集的模型参数 梯度下降:逐渐调整模型参数直到训练集上的成本函数调至最低,最终趋同与第一种方法计算出的参数 首先,给出线性回归模型的 ...

  2. Linux - 查看文件信息的三个命令

    ls命令 - list directory contents 显示文件详细信息:ls -l <file name> file命令 - determine file type determi ...

  3. 【sping揭秘】20、spring的orm

    面向对象的操作方式,spring统一定义在org.springframework.jdbc.object以RdbmsOperation作为顶层抽象定义 Spring对各种ORM的集成 Spring的集 ...

  4. Python -- tabulate 模块,

    pip install tabulate >>> from tabulate import tabulate >>> table = [["Sun&quo ...

  5. 使用FluentMigrator进行数据库迁移

    介绍 在开发的过程中,经常会遇到数据库结构变动(表新增.删除,表列新增.修改.删除等).开发环境.测试环境.正式环境都要记性同步:如果你使用EF有自动迁移的功能,还是挺方便的.如果非EF我们需要手工处 ...

  6. LearnOpenGL学习笔记(三)——VBO,VAO,EBO理解

    在opengl中所有的数据都要放在显存中,我们通过一定的手段去管理它,既要提供地方存放它,还要提供方法去正确地提取它们,去使用它们,opengl通过VAO,VBO,EBO这些手段来解决这些问题. (一 ...

  7. Xdebug在PHP中的安装配置

    Xdebug在PHP中的安装配置涉及php.ini配置文件的修改. 1  首先需要下载Xdebug,根据安装的PHP版本,选择合适的Xdebug版本, 2  安装Xdebug将下载的php_xdebu ...

  8. iframe可通过postMessage解决跨域、跨窗口消息传递

    https://www.cnblogs.com/dorothyorsusie/p/6178599.html //iframe传参给父级页面 function give_info(){ console. ...

  9. java基础之继承(一)

    虽然说java中的面向对象的概念不多,但是具体的细节还是值得大家学习研究,java中的继承实际上就是子类拥有父类所有的内容(除私有信息外),并对其进行扩展.下面是我的笔记,主要包含以下一些内容点: 构 ...

  10. [AHOI2005] 航线规划

    Description 对Samuel星球的探险已经取得了非常巨大的成就,于是科学家们将目光投向了Samuel星球所在的星系--一个巨大的由千百万星球构成的Samuel星系. 星际空间站的Samuel ...