• Day 2 python入门


    day2思维导图

    一 编程语言分类

    机器语言 Machine Code

    执行效率最高,开发效率最低,跨平台性差

    机器语言是机器能直接识别的程序语言或指令代码,无需经过翻译,每一操作码在计算机内部都有相应的电路来完成它,或指不经翻译即可为机器直接理解和接受的程序语言或指令代码。机器语言使用绝对地址和绝对操作码。不同的计算机都有各自的机器语言,即指令系统。从使用的角度看,机器语言是最低级的语言。

    In computer programming, machine code, consisting of machine language instructions, is a low-level programming language used to directly control a computer's central processing unit (CPU). Each instruction causes the CPU to perform a very specific task, such as a load, a store, a jump, or an arithmetic logic unit (ALU) operation on one or more units of data in the CPU's registers or memory.

    汇编语言 Assembly Language

    执行效率高,开发效率低,跨平台性差

    汇编语言是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。在不同的设备中,汇编语言对应着不同的机器语言指令集,通过汇编过程转换成机器指令。特定的汇编语言和特定的机器语言指令集是一一对应的,不同平台之间不可直接移植。

    In computer programming, assembly language (or assembler language),often abbreviated asm , is any low-level programming language in which there is a very strong correspondence between the instructions in the language and the architecture's machine code instructions. Because assembly depends on the machine code instructions, every assembly language is designed for exactly one specific computer architecture. Assembly language may also be called symbolic machine code.

    高级语言 High-level programming language

    高级语言是一种独立于机器,面向过程或对象的语言。高级语言是参照数学语言而设计的近似于日常会话的语言。例如,要将2个变量相加并赋值给第三个变量,用高级语言表达为var3=var1+var2

    In computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer. In contrast to low-level programming languages, it may use natural language elements, be easier to use, or may automate (or even hide entirely) significant areas of computing systems (e.g. memory management), making the process of developing a program simpler and more understandable than when using a lower-level language. The amount of abstraction provided defines how "high-level" a programming language is.

    编译型 Compiler

    代表:C、C++、Go、Ada、Pascal

    执行效率高,开发效率低,跨平台性差

    A compiler is a program that translates source code into object code to be understood by a specific central processing unit (CPU). The act of translating source code into object code is known as compilation. Compilation is typically used for programs that translate source code from a high-level programming language (such as C++) to a low-level programming language (such as machine code) to create an executable program. Likewise, when a low-level language is converted into a high-level language, the process is called decompilation.

    解释型 Interpreter

    代表:python、shell、Tcl、Perl、Ruby、VBScript、JavaScript

    执行效率低,开发效率高,跨平台性强

    An interpreter translates high-level instructions into an intermediate form, which it then executes. In contrast, a compiler translates high-level instructions directly into machine language. Compiled programs generally run faster than interpreted programs. The advantage of an interpreter, however, is that it does not need to go through the compilation stage during which machine instructions are generated. This process can be time-consuming if the program is long. The interpreter, on the other hand, can immediately execute high-level programs.

    总结

    1、执行效率:机器语言>汇编语言>高级语言(编译型>解释型)

    2、开发效率:机器语言<汇编语言<高级语言(编译型<解释型)

    3、跨平台性:解释型具有极强的跨平台型

     

    二 python介绍

    创始人

    Guido van Rossum 吉多·范罗苏姆

    特点 Features of Python

    (1)简单易学 Easy to Code

    Python是一种代表简单主义思想的语言。阅读一个良好的 Python程序就感觉像是在读英语段落一样,尽管这个英语段落的语法要求非常严格。 Python最大的优点之一是具有伪代码的本质,它使我们在开发 Python程序时,专注的是解决问题,而不是搞明白语言本身。

    (2)面向对象 Object-Oriented Approach

    Python既支持面向过程编程,也支持面向对象编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如C++和Java相比, Python以一种非常强大又简单的方式实现面向对象编程。

    (3)可移植性

    由于 Python的开源本质,它已经被移植在许多平台上。如果小心地避免使用依赖于系统的特性,那么所有 Python程序无需修改就可以在下述任何平台上运行,这些平台包括Lnux、Windows、 FreeBSD、 Macintosh、 Solaris、OS/2、Amiga、AROS、AS/400、Beos OS/390、Z/OS、 Palm OS、QNX、VMS、 Psion、 Acorn RISC OS、VxWorks、 PlayStation、 Sharp Zaurus、Windows CE,甚至还有 PocketPC、Symbian以及 Google基于Lnux开发的Android平台。

    (4)解释性 Integrated by Nature

    一个用编译性语言如C或C++写的程序可以从源文件(即C或C++语言)转换到一个计算机使用的语言。这个过程通过编译器和不同的标记、选项完成。当运行程序的时候,连接转载器软件把程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码,可以直接从源代码运行程序。在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于不再担心如何编译程序,如何确保连接转载正确的库等,这一切使得使用Python变得更加简单。由于只需要把Python程序复制到另外一台计算机上,它就可以工作了,这也使得Python程序更加易于移植。

    (5)开源 Open Source and Free

    Python是 FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝,阅读它的源代码,对它做改动,把它的一部分用于新的自由软件中。 FLOSS是基于一个团体分享知识的概念,这是为什么Python如此优秀的原因之一 ——它是由一群希望看到一个更加优秀的 Python的人创造并经常改进这的。

    (6)高级语言 High-Level Language

    Python是高级语言。当使用 Python语言编写程序时,无需再考虑诸如如何管理程序使用的内存一类的底层细节。

    (7)可扩展性 Support for Other Languages

    如果需要一段关键代码运行的更快或者希望某些算法不公开,就可以把部分程序用C或C语言编写,然后在 Python程序中使用它们。

    (8)丰富的库 Extensive Array of Library

    Python标准库确实很庞大,它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGl、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GU(图形用户界面)、Tk和其他与系统有关的操作。记住,只要安装了 Python,所有这些功能都是可用的,这被称作 Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如 wXPython、 Twisted和Pyon图像库等。

    (9)规范的代码

    Python采用强制缩进的方式使得代码具有极佳的可读性。

     

    三 安装多版本python解释器

    安装python2和python3两个版本的解释器

    设置环境变量

     

    四 第一个python程序

    交互式环境

    特点

    1.即时运行

    2.无法永久保存

    打印“Hello world”

    print ("Hello world")

    写入文件

     

    五 运行python程序的三个阶段

    1.先启动python解释器

    2.python解释器将文件内容从硬盘读入内存

    3.python解释器读入代码,识别python语法

     

    六 IDE 集成开发环境

    An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools and a debugger.

    是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。

    IDE for python

    pycharm

    七 注释

    多行注释

    三引号

    单行注释

    井号键

    快捷键

    Ctrl+Alt+L 重定代码格式

    Ctrl+/ 快速在本行/选中内容前添加注释

    注释的其他作用

    可以用来处理某一行不想运行却又不想删除的代码

     

    八 变量 Variate

    什么是变量

    变量是计算机语言中能储存计算结果或能表示值的抽象概念

    变量是一种存取内存的机制

    为什么要有变量

    为了让计算机能够让人一样记录事物的状态

    如何用变量

    原则:先定义后引用

    定义

    变量名+赋值符号+变量值

    Variable name + "=" + Variable value

    变量名相当于地址,指向值所在的内存地址

    赋值符号为等号

    变量的值就是存储的数据,表示事物的状态

    name = 'Matthews' # 记下人的名字为'Matthews'
    sex = 'male'   # 记下人的性别为男性
    age = 28     # 记下人的年龄为28岁
    salary = 80000.1 # 记下人的薪资为80000.1元

    引用

    变量名千万不能加引号

     

    补充知识

    1.php是世界上最好的语言

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

    PHP是最好的语言,网络流行词,程序员常用梗。用来嘲讽程序员技术较差,比较初级,或者只善于做键盘侠,而没有真本事。

    2.幸存者偏差

    https://baike.baidu.com/item/%E5%B9%B8%E5%AD%98%E8%80%85%E5%81%8F%E5%B7%AE

    幸存者偏差指的是当取得资讯的渠道,仅来自于幸存者时,此资讯可能会与实际情况存在偏差。 幸存者偏差,是由优胜劣汰之后自然选择出的一个道理:未幸存者已无法发声。 [1] 人们只看到经过某种筛选而产生的结果,而没有意识到筛选的过程,因此忽略了被筛选掉的关键信息

     

  • 相关阅读:
    使用redis,zookeeper实现分布式锁
    基于线程池的多线程售票demo(原创)
    springboot全局异常处理
    IDEA2017.3.4破解方式及lombok图文配置详解
    LeetCode 120——三角形最小路径和
    LeetCode 1——两数之和
    LeetCode 445——两数相加 II
    在本地电脑使用远程服务器的图形界面——包括 MATLAB、PyCharm 等各种软件
    LeetCode 141——环形链表
    LeetCode 142——环形链表 II
  • 原文地址:https://www.cnblogs.com/fengshili666/p/14143415.html
Copyright © 2020-2023  润新知