【JulyEdu-Python基础】第 1 课:入门基础

时间:2022-01-23 15:04:33

一些学习资源的收集:

可汗学院 视频 公开课

Grossin 编程教室: 一个非常简单,对初学者非常友好的教程和在线联系

廖雪峰教程

书籍:

Python核心编程: 这本书应该是最清楚、最深入全面的书

像计算机科学家一样思考python:很好的一本入门书

Python2.7 Tutorial中文版 :官方文档的中文翻译

笨方法学Python

Python High Performance Programming: 进阶的书

Cython - A Guide for Python Programmers: Cython 是一种加速Python 代码的渠道 numpy和pandas等就是依靠Cython来加速的

WebScraping with Python: Python3 网页爬虫的入门书,这本书的爬虫方案和数据清洗方案不推荐,但是可以提供一下思路指导

Data Structures and Algorithms Using Python: 用Python讲数据结构和算法 简直是强行造*,Python封装的太到位了,大部分用不上,

不过这本书非常好,通俗易懂

Python for Data Analysis: 这本书是Pandas的作者写的Python数据分析必看的书--还有中文版

Introduction to Python for Econometric: 这本书虽然叫这个名字,但是一点也不计量统计和数据分析,其实是一本科学计算的入门

Mining the Social Web,Matthe: 挖掘社交网络的,没有太多社交网络的理论,主要是工具

Python自然语言处理: 自然语言处理,这本书是NLTK的官方教程,NLTK是专门用来做NLP的工具箱

机器学习实战:这本书是机器学习的入门书,偏计算机算法的应用范围讲的非常清楚,但是统计背景不深,如果想系统的学习统计原理,推荐使用叫统计学的书,很多是用R做工具的

An Introduction to Statistical Learning

PythonSim: 一个关于Simulation的简单介绍

HeadFirst Python的中文版: Python3入门

Programming Python: Python3进阶

Python 高级编程: Python2进阶

Python源码剖析: Python2

Python Cookbook中文版:Python2

集体编程智慧: 数据科学的入门资料

数据科学实战: 数据科学入门资料

Python for Data Analysis的中文版

Python数据分析基础教程

Numpy学习指南(第二版)

编程的学习经验:

https://www.zhihu.com/question/29372574

https://www.zhihu.com/topic/19552832

https://zhuanlan.zhihu.com/p/21373956

Python基本的框架及语法内容:

学习内容来自:七月在线

python2 和 python3的主要区别:

部分语法不兼容、

数据类型的变化、

异常的改进......

示例:

如何学好编程

基础部分:

  基本语法:

    基本数据类型

    对象的定义和声明

    循环和判断:for、foreach、if、while, do ...

    逻辑运算

    位运算

  数据结构

    数组

    字符串

    系统标准库自带的类型

    如何实现常用数据结构: 链表、堆栈、二叉树 ...

  输入输出

    标准输入输出: print, echo, input ...

    文本读写:文本/ 二进制

      文本:行读写

      二进制:偏移量 + 大小

    格式化字符串

  异常处理

    抛出和捕获异常:try/catch、try/except ...

    异常和错误的区别以及应用场合

进阶提高:

  常用算法

    分治

    贪心

    动态规划

  数据库访问

    建立连接

    执行SQL查询

    读取查询记录

  面向对象

    继承

    多态

    静态变量与方法

  其它

    多线程、进程

      进程有独立地址空间,线程是进程的一部分

    匿名函数

    语言相关特定知识

      java的反射  

      C++的模板

      Python的协程 ...

常用关键字

  常量

    True

    False

    None

  对象和容器

    class

    import

    from    

    del

  判断

    if

    elif

    else

    is

    in

    assert

  循环

    for

    while

    continue

    break

    pass

  异常

    raise

    try

    except    

    finally  

    as

常用运算符

  算术运算

    + - * /

    %

    **

    //

  比较运算

    >, >=

    <, <=

    ==

    !=

  逻辑运算 

    and

    or

    not

  位运算

    快速做乘法、除法

    >>

    <<  

    %  

    |

    ^

基本语法

  缩进

    indentation error: unexcepted indent

  注释

    #

    '''

    第一行

    第二行  

    '''

    str = 'abcd'\

        'efgh'

    print(str)

  多行代码表示

  中文支持

    py27版本

    # -*- coding:utf-8 -*-

    #coding:utf-8

www.lintcode.com

2.x 和 3.x 的区别

  print 函数: 3.x 必须加上()

  Unicode: 3.x 默认使用unicode编码

  除法运算: 3.x 整数相除也能得到浮点数结果

  异常: 3.x 只能抛出继承自 BaseException 的异常

  xrang: 3.x 取消了 xrange, range 与 xrange 一样为实现的惰性求职

  二/八进制: 3.x 必须强制卸任0b1011 和 0o7236

  不等式:3.x 取消了'<>', 只有 '!='

  表达式:3.x 必须使用repr函数

  多个模块改名:Queue -> queue, repr -> reprlib ...

  数据类型:

    3.x 取消了long, 统一为int

    新增bytes类型,并可与string相互转换

    dict的keys / items/ values方法返回迭代器,iterkeys函数被废弃, has_key被in取代