不知不觉学习python已经两个月了,从一开始不知道如何对print的格式化,到现在可以手撸orm,这期间真的是

一个神奇的过程。为了巩固自己的基础知识,为后面的拓展埋下更好的伏笔,此文当以导师的博客来仔细的复习。老

师的博客地址http://www.cnblogs.com/linhaifeng/p/7278389.html。

  首先第一天学习的便是python入门,即对python基础以及编程语言进行了简单的介绍。

一 编程与编程语言

  首先python是一门编程语言,我们要学python首先要搞明白编程的目的是什么,什么是编程语言,什么是编程。

编程的目的:计算机的发明,是为了用机器取代、解放人力,而编程的目的则是将人类的思想流程按照某种能够被

计算机识别的表达方式传递给计算机,从而达到让计算机能够像人脑一样自动执行的效果。

什么是编程语言:上面提及的能够被计算机所识别的表达方式即编程语言,语言是沟通的介质,而编程语言是程序员

与计算机沟通的介质。

什么是编程:编程即程序员根据要求把自己的思想流程按照某种编程语言的语法风格编写下来,产出的结果就是包含

一堆字符的文件。程序在未运行前跟普通文件无异,只有程序在运行时,文件内所写的字符才有特定的语法意义。

二 编程语言分类

  机器语言:直接用二进制编程,直接操作硬件;

  汇编语言:用简写的英文标识符取代二进制去编写程序,本质仍然是直接操作硬件;

  高级语言:用人类的字符编写程序,屏蔽了硬件操作。

  

  高级语言必须被翻译成计算机能读懂的二进制才能被执行,按照翻译方式分类为:

    编译型(需要编译器,相当于谷歌翻译):如C,执行速度快,调试麻烦。

    解释型(需要解释器,相当于同声传译):如python,执行速度慢,调试方便

  总结:

    机器语言
    优点是最底层,执行速度最快
    缺点是最复杂,开发效率最低

    汇编语言
    优点是比较底层,执行速度最快
    缺点是复杂,开发效率最低

    高级语言
    编译型语言执行速度快,不依赖语言环境运行,跨平台差
    解释型跨平台好,一份代码,到处使用,缺点是执行速度慢,依赖解释器运行

    一句话概括:三种语言学习难度从高到低,执行效率从高到低,开发效率从低到高。在编程世界里,速度不

    是关键(瓶颈理论),开发效率高才是王道。

三 主流编程语言示例: C,C++,C#,Python,PHP,JavaScript等等。

四 python介绍:导师博客上写的非常详细,本文是以复习知识要点为主要目的,便不再阐述。

  要点:1991年,第一个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件。从一出生,Python

已经具有了:类,函数,异常处理,包含表和词典在内的核心数据类型,以及模块为基础的拓展系统。

  python解释器的种类:

    1、CPython:CPython是使用最广且被的Python解释器。本教程以CPython为准。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。

    2、IPython:IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。

    3、pypy:PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点。

    4、Jython:Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。

    5、IronPython:IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

五 变量

  1、定义变量会有:id,type,value。  

  2、等号比较的是value,is比较的是id。id相同,意味着type和value必定相同;value相同type肯定相同,但id可能不同。

六 用户与程序交互

  1、在python3中input:用户输入任何值,都存成字符串类型。

    在python2中input:用户输入什么类型,就存成什么类型;raw_input:等于python3的input。

  2、代码注释分单行和多行注释, 单行注释用#,多行注释可以用三对双引号""" """

  3、文件头     #!/usr/bin/env python
        # -*- coding: utf-8 -*-

七 基本数据类型

  1、int整型: age=10   #age=int(10)

  2、float浮点型: salary=3.1  #salary=float(3.1)

  3、complex复数型:x=1-2j  ; x.imag ;   x.real

  4、字符串: name='egon'  #name=str('egon')

  5、列表: students=['egon','alex','wupeiqi',]  #students=list(['egon','alex','wupeiqi',])

  6、字典: info={'name':'egon','age':18,'sex':18}  #info=dict({'name':'egon','age':18,'sex':18})

  7、布尔:布尔值,一个True一个False,所有数据类型都自带布尔值,除了None、0、空三种情况为False外,其余均为真。

  8、可变与不可变:可变类型:在id不变的情况下,value可以变,则称为可变类型,如列表,字典;
            不可变类型:value一旦改变,id也改变,则称为不可变类型(id变,意味着创建了新的内存空间);

八 格式化输出:

  1、%s字符串占位符:可以接收字符串,也可接收数字 print('My name is %s,my age is %s' %('egon',18))

  2、.format()的三种用法

九 基本运算符

  1、算术运算

  2、比较运算

  

  3、赋值运算

  

  4、逻辑运算

十 流程控制

  1、if...else

  2、while循环

  3、while+else:当while 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句。

  4、for循环

  

python 零基础学习之路 02-python入门的更多相关文章

  1. Python零基础学习系列之二--Python介绍及环境搭建

    1-1.Python简介: Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年.像P ...

  2. Python零基础学习系列之三--Python编辑器选择

    上一篇文章记录了怎么安装Python环境,同时也成功的在电脑上安装好了Python环境,可以正式开始自己的编程之旅了.但是现在又有头疼的事情,该用什么来写Python程序呢,该用什么来执行Python ...

  3. Python零基础学习系列之一--初识计算机!

    1-1.计算机概念: Computer: 原指专门负责计算的人,后来演变成特指计算设备,译为"计算机" 计算机的概念: 计算机是能够根据一组指令操作数据的机器. A compute ...

  4. 【jq】c#零基础学习之路(1)Hello World!

    从今天起我会持续发表,这个就是一个日记型的,学习编程是枯燥的,况且我们还是零基础. 学前准备 1.编译环境 vs2010.vs2012.vs2015...(本人用的是vs2010旗舰版).vs2010 ...

  5. Python零基础学习系列之四--Python程序设计思想

    前面我们把Python环境安装成功,同时也选择了自己合适的IDE工具来开启自己的编程之旅. 那么今天来说说怎么编程,程序设计需要什么步骤,我们应该怎么做才能编写自己的程序. 1-1.程序设计方法: I ...

  6. python零基础学习开篇

    我是某工业大学的一名博士,研究方向是基于人脸的模式识别.很遗憾,毕业后没有继续从事图像处理中模式识别相关研究.多种原因进入了一家国企单位,从事交通方面工作.工作2年中一直迷茫,没有在工作岗位中找到自己 ...

  7. Android 零基础学习之路

    第一阶段:Java面向对象编程 1.Java基本数据类型与表达式,分支循环. 2.String和StringBuffer的使用.正則表達式. 3.面向对象的抽象.封装,继承,多态.类与对象.对象初始化 ...

  8. 【jq】c#零基础学习之路(5)自己编写简单的Mylist<T>

    public class MyList<T> where T : IComparable { private T[] array; private int count; public My ...

  9. 【jq】c#零基础学习之路(4)抽象类和密封

    一.抽象类 1.抽象类不能被实例化 2.抽象类方法必需要实现 3.如何类中函数为抽象函数,其类也需要定义成抽象类 4.关键字 abstract ,函数重写 override. 二.密封类 1.密封类不 ...

随机推荐

  1. 内核调试工具 — kdump & crash

    kdump简介 kdump是系统崩溃的时候,用来转储运行内存的一个工具. 系统一旦崩溃,内核就没法正常工作了,这个时候将由kdump提供一个用于捕获当前运行信息的内核, 该内核会将此时内存中的所有运行 ...

  2. erlang在redhat上的安装

    erlang在redhat上的安装 1) 下载源码包: http://www.erlang.org/download/otp_src_17.3.tar.gz 2) RHEL6.4预安装包 $ yum ...

  3. navicat为mysql建立索引

    索引的目的是大大提高查询效率,还有读写效率. kettle向sql里面插入,更新时,也要建立索引,可以大大提升处理时间. 但是建立索引报错:Specified key was too long; ma ...

  4. 初探linux子系统集之i2c子系统(一)

    I2c子系统在进公司来的时候就学习过了,可是那是还不是很熟悉linux中的i2c子系统,就没有细看.记得当初很想熟悉linux中的各种总线驱动,想专门写一个关于总线驱动的专集,后来发现好像就没有几个, ...

  5. LeetCode之旅(16)-Climbing Stairs

    题目描述: You are climbing a stair case. It takes n steps to reach to the top. Each time you can either ...

  6. C标准中关于空指针的那些事

    1 C标准不保证用所有二进制位都为0的变量来表示空指针,但它保证空指针与任何对象或函数的指针都不相等,取地址操作符&永远也不会返回空指针: 2 C标准称在指针上下文中的"值为0的整形 ...

  7. day08_Servlet学习笔记

     ============================================================ 一.什么是Servlet?(非常非常重要) servlet 是运行在 Web ...

  8. Core Animation简介

    一.Core Animation简介 * Core Animation,中文翻译为核心动画,它是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果,而且往往是事半功倍.也就是说,使用少量的代 ...

  9. PhpStudy如何开启Apache的gzip压缩功能?

    要让apache支持gzip功能,要用到deflate_Module和headers_Module. 打开apache的配置文件httpd.conf,大约在105行左右,找到以下两行内容:(这两行不是 ...

  10. 2013-9百度技术沙龙:Clouda与nodejs

    Clouda 云端一体设计思路 目前的App推广由于渠道原因非常难 Clouda是用Web技术做的移动App的框架 实时在线将会启动一批新需求 线下数据线上实时化 本地存储Merge 面向数据的开发方 ...