python基础入门

一、计算机简介

要实现计算机编程,首先需要明确计算机的组成。计算机主要分为硬件和软件两部分,而我们写代码,主要就是实现软件层面的功能

要实现计算机编程,首先需要明确计算机的组成。计算机主要分为硬件和软件两部分,而我们写代码,主要就是实现软件层面的功能,计算机是20世纪最先进的科学技术发明之一。

1.计算机组成

一个完整的计算机系统,是由硬件系统软件系统两大部分组成的

2.硬件系统

主要分为主机和外设两部分,是指那些构成计算机系统的物理实体,它们主要由各种各样的电子器件和机电装置组成。从ENIAC(世界上第一台计算机)到当前最先进的计算机,硬件系统的设计采用的都是 冯·诺依曼体系结构

具体组成:

  • 运算器: 负责数据的算术运算和逻辑运算,即数据的加工处理。

  • 控制器: 是整个计算机的中枢神经,分析程序规定的控制信息,并根据程序要求进行控制,协调计算机各部分组件工作及内存与外设的访问等。运算器和控制器统称中央处理器(即CPU)

  • 存储器: 实现记忆功能的部件,用来存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息。

  • 输入设备: 实现将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输入到计算机。

  • 输出设备: 实现将计算机处理后生成的中间结果或最后结果(各种数据符号及文字或各种控制信号等信息)输出出来。

3.软件系统

主要分为系统软件应用软件,是指计算机证运行所需的各种各样的计算机程序

  • 操作系统:是一种方便用户管理和控制计算机软硬件资源的系统软件,同时也是一个大型的软件系统,其功能复杂,体系庞大,在整个计算机系统中具有承上启下的地位。我们操作计算机实际上是通过操作系统来进行的,它是所有软件的基础和核心。

  • 语言处理程序:也称为编译程序,作用是把程序员用某种编程语言(如Python)所编写的程序,翻译成计算机可执行的机器语言。机器语言也被称为机器码,是可以通过CPU进行分析和执行的指令集

4.软件开发

不论是系统软件还是应用软件,制作软件的过程,被称为软件开发,软件的出现实现了人与计算机之间更好的人机交互

交互方式:

图形化界面:用户容易上手,容易操作

命令行方式:在终端可以输入相应的指令,根据指令完成相应的操作

5.DOS命令

DOS命令,计算机术语,是指DOS操作系统的命令,是一种面向磁盘的操作命令,主要包括目录操作类命令、磁盘操作类命令和文件操作类命令等

windows 和r

相对路径和绝对路径的区别:

绝对路径:在windows中,如果带有盘符的路径

相对路径:在windows中,如果不带有盘符,相对于当前的路径进行操作的

rd  xxxx        删除空目录
rd /s   xxx     不管是否为空都可以删除,但是可以询问
rd /s /q xxx 直接删除,不询问【强制删除】


演示命令:
C:\Users\Administrator>dir
驱动器 C 中的卷没有标签。
卷的序列号是 DAFF-9D5E

C:\Users\Administrator 的目录

2020/03/15 23:08   <DIR>         .
2020/03/15 23:08   <DIR>         ..
2017/10/13 16:09   <DIR>         .android
2019/11/01 18:01             2,507 .bash_history
2016/11/21 17:11   <DIR>         .eclipse
2019/08/22 17:20               57 .gitconfig
2019/10/17 19:00   <DIR>         .matplotlib
2017/11/23 19:08   <DIR>         .myeclipse
2017/11/24 09:26               568 .myeclipse.properties
2018/07/11 21:02   <DIR>         .oracle_jre_usage
2018/01/17 09:02   <DIR>         .p2
2018/07/23 10:56   <DIR>         .PyCharmCE2016.3
2019/08/22 17:37   <DIR>         .ssh
2017/12/07 16:04   <DIR>         .tooling
2019/10/25 16:35           18,993 .viminfo
2016/08/12 22:21   <DIR>         AppData
2018/08/05 22:30   <DIR>         build
2020/03/11 18:21   <DIR>         Contacts
2020/03/16 14:31   <DIR>         Desktop
2020/03/11 18:21   <DIR>         Documents
2017/05/25 17:58   <DIR>         Downloads
2020/03/11 18:21   <DIR>         Favorites
2017/06/27 10:32   <DIR>         Funshion
2017/06/27 10:32               47 FunShion.ini
2020/03/15 23:08             1,228 HBuilder.lnk
2020/03/11 18:21   <DIR>         Links
2020/03/11 18:21   <DIR>         Music
2020/03/14 18:22   <DIR>         OneDrive
2020/03/11 18:21   <DIR>         Pictures
2020/03/11 18:21   <DIR>         Saved Games
2020/03/11 18:21   <DIR>         Searches
2020/03/15 23:20   <DIR>         Videos
2016/12/14 15:50   <DIR>         workspace
2017/11/24 09:27   <DIR>         Workspaces
          6 个文件         23,400 字节
          28 个目录 5,146,963,968 可用字节

C:\Users\Administrator>cd Desktop

C:\Users\Administrator\Desktop>dir
驱动器 C 中的卷没有标签。
卷的序列号是 DAFF-9D5E

C:\Users\Administrator\Desktop 的目录

2020/03/16 14:31   <DIR>         .
2020/03/16 14:31   <DIR>         ..
2016/12/14 16:11       46,471,544 ChromeStandalone_55.0.2883.87_Setup.exe
2020/03/16 14:31   <DIR>         NZ2001
2020/03/14 18:15   <DIR>         NZ2002
2020/03/15 23:08   <DIR>         Python
          1 个文件     46,471,544 字节
          5 个目录 5,139,230,720 可用字节

C:\Users\Administrator\Desktop>cd NZ2001

C:\Users\Administrator\Desktop\NZ2001>cd..

C:\Users\Administrator\Desktop>d:
设备未就绪。

C:\Users\Administrator\Desktop>cd/

C:\>cd Users

C:\Users>cd Administrator

C:\Users\Administrator>cd Desktop

C:\Users\Administrator\Desktop>cd..

C:\Users\Administrator>cd c:\Users\Administrator\Desktop

c:\Users\Administrator\Desktop>md abc

c:\Users\Administrator\Desktop>rd   abc

c:\Users\Administrator\Desktop>cd
c:\Users\Administrator\Desktop

c:\Users\Administrator\Desktop>cd>a1.txt

c:\Users\Administrator\Desktop>cd
c:\Users\Administrator\Desktop

c:\Users\Administrator\Desktop>md abc

c:\Users\Administrator\Desktop>cd abc

c:\Users\Administrator\Desktop\abc>cd>b1.txt

c:\Users\Administrator\Desktop\abc>cd..

c:\Users\Administrator\Desktop>rd abc
目录不是空的。

c:\Users\Administrator\Desktop>rd /s abc
abc, 是否确认(Y/N)? Y

c:\Users\Administrator\Desktop>type nul>b1.txt

c:\Users\Administrator\Desktop>copy nul>c1.txt

c:\Users\Administrator\Desktop>echo hellohello>d1.txt

c:\Users\Administrator\Desktop>del a1.txt

c:\Users\Administrator\Desktop>del /p b1.txt
c:\Users\Administrator\Desktop\b1.txt,要删除(Y/N)吗? Y

c:\Users\Administrator\Desktop>ren c1,txt   file1.txt
命令语法不正确。

c:\Users\Administrator\Desktop>ren c1,txt file1.txt
命令语法不正确。

c:\Users\Administrator\Desktop>ren c1.txt file1.txt

c:\Users\Administrator\Desktop>

二、编程语言

1.简介

编程语言就是用来定义 计算机程序 的形式语言。我们通过编程语言来编写程序代码,再通过语言处理程序执行向计算机发送指令,让计算机完成对应的工作,编程语言就是人类和计算机进行交流的语言

常用的编程语言:Python,Java,JavaScript,OC,Swift,C#,c等

2.计算机工作原理

按照冯·诺依曼存储程序的原理,计算机的工作流程大致如下:

  1. 用户打开程序,程序开始执行;

  2. 操作系统将程序内容和相关数据送入计算机的内存; CPU根据程序内容从内存中读取指令;

  3. CPU分析、处理指令,并为取下一条指令做准备;

  4. 取下一条指令并分析、处理,如此重复操作,直至执行完程序中全部指令,最后将计算的结果放入指令指定的存储器地址中

三、Python简介

1.Python发展史

Python由荷兰人Guido van Rossum于【吉多·范·罗苏姆】1989年发明的,第一个公开发行版发行于1991年

1999年:支持网站开发

2000年:2.0产生,这个时候构成了现在 python语言框架的基础

2004年:经典版2.4被使用很久,同时 python的Web框架Django诞生了

2008年10月:python2.6

2008年12月:python3.0【之前 Python 的内容有很多重复的,就做了版本更新,升级为3.0 ,但是这个版本与之前的语言不兼容,所以就做了小版本更新 例如出现了2.6.1 。。。 2.6.6做了语言之间的过渡】

2010年:Python2.7【也就是2.6 与2.7是到3.0的一个过渡】

目前业内使用的工业版本使用的主流依然是2.7,现在新项目的主流都是3.x

总结: Python2.x 是遗产, Python3.x 是现在和未来的语言

Python是一种比Java还要古老的编程语言,2010年之前关注度并不是特别高,但最近几年在大数据和机器学习方面得到了非常广泛的应用。在TIOBE Index最近发布的编程语言排行榜上,Python蹿升到了前三名的位置,是目前炙手可热的编程语言

2.Python的特点

  • Python是一种解释性语言【开发过程中没有了编译这个环节,类似于PHP或者Perl语言】

  • Python是交互式语言【可以在一个Python提示符,直接互动执行程序】

  • Python是面向对象语言【Python支持面向对象的风格或代码封装在对象的编程技术】

  • Python是初学者的语言【Python对于初级程序员而言,是一种伟大的语言,他支持广泛的应用程序开发,从简单的文字处理到浏览器再到游戏】

  • Python是跨平台的【它可以运行在Windows、Mac os或者Linux系统上,也就是说,在Windows上书写的Python程序,在Linux上也是可以运行的,类似于Java】

3.Python优缺点【面试题】

优点:

  • 易于学习【Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单】

  • 易于阅读【Python代码定义的更清晰】

  • 易于维护【Python的成功在于它的源代码是相当容易维护的】

  • 一个广泛的标准库【Python的最大优势之一是丰富的库,跨平台的,在nuix、weindows和mac os上的兼容性很好】

  • 互动模式【互动模式的支持,可以胸终端输入执行代码并获得结果的语言,互动的测试和调试代码片段】

  • 可移植性【基于其开发源代码的特性,Python已经被移植到许多平台】

  • 可扩展性【如果需要一段运行很快的关键代码,或者想要编写一些不愿开发的算法,可以使用C或者C++完成那部分程序,然后从你的Python程序中调用】

  • 数据库【Python提供所有主要的商业数据库的接口】

  • GUI编程(图形化界面)【Python支持GUI可以创建和移植到许多系统调用】

  • 可嵌入性【可以将Python嵌入到C或者C++程序,让你程序的用户获得“脚本化”的能力】

缺点:

  • 运行速度慢【和C程序相比非常慢,因为Python是解释型语言,代码在执行时会一行一行的翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢,而C程序是运行前直接编译成CPU能执行的机器码,所以非常快】

  • 代码不能加密【如果要发布Python程序,实际上就是发布源代码,这一点跟C语言不通,C语言不用发布源代码,只需要把编译后的机器码(就是windows上常见的xxx.exe)发布出去,要从机器码反推出C代码是不可能的,所以,凡是编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去】

4.Python应用场景

  • Web开发【通过mod_wsgi模块,Apache可以运行用Python编写的Web程序。Python定义了WSGI标准应用接口来协调Http服务器与基于Python的Web程序之间的通信。一些Web框架,如Django,TurboGears,web2py,Zope等,可以让程序员轻松地开发和管理复杂的Web程序】

  • 操作系统管理、服务器运维的自动化脚本【在很多操作系统里,Python是标准的系统组件。 大多数Linux发行版以及NetBSD、OpenBSD和Mac OS X都集成了Python,可以在终端下直接运行Python。Python编写的系统管理脚本在可读性、性能、代码重用度、扩展性几方面都优于普通的shell脚本】

  • 网络爬虫【Python有大量的HTTP请求处理库和HTML解析库,并且有成熟高效的爬虫框架Scrapy和分布式解决方案scrapy-redis,在爬虫的应用方面非常广泛】

  • 科学计算(数据分析)【NumPy、SciPy、Pandas、Matplotlib可以让Python程序员编写科学计算程序】

  • 桌面软件【PyQt、PySide、wxPython、PyGTK是Python快速开发桌面应用程序的利器】

  • 服务器软件(网络软件)【Python对于各种网络协议的支持很完善,因此经常被用于编写服务器软件、网络爬虫。第三方库Twisted支持异步网络编程和多数标准的网络协议(包含客户端和服务器),并且提供了多种工具,被广泛用于编写高性能的服务器软件】

  • 游戏【很多游戏使用C++编写图形显示等高性能模块,而使用Python或者Lua编写游戏的逻辑、服务器。相较于Python,Lua的功能更简单、体积更小;而Python则支持更多的特性和数据类型】

    搜狐、豆瓣、腾讯、网易、百度、阿里、淘宝、土豆、新浪等都在内部大量的使用Python

 

posted @ 2020-04-07 18:22  灬丿骑猪看夕阳O~O  阅读(464)  评论(0)    收藏  举报