Python基础笔记_Day01_计算机基础知识和Python开发环境搭建

Day01_计算机基础知识和Python开发环境搭建

目录
01.01_计算机基础知识(计算机概述)(了解)
01.02_计算机基础知识(软件开发和计算机语言概述)(了解)
01.03_计算机基础知识(人机交互)(了解)
01.04_计算机基础知识(键盘功能键和快捷键)(掌握)
01.05_计算机基础知识(如何打开命令提示符(CMD–command))(掌握)
01.06_计算机基础知识(常见的DOS命令讲解)
01.07_Python语言基础(Python语言概述)(了解)
01.08_Python语言基础(Python语言特点)(了解)
01.09_Python语言基础(Python使用场景)(了解)
01.10_Python语言基础(Python开发环境搭建)(掌握)
01.11_Python语言基础(第一个Python程序——HelloWorld)(掌握)
01.12_Python语言基础(注释概述及其分类)(掌握)
01.13_Python语言基础(进制概述)(了解)
01.14_Python语言基础(不同进制数据的表现形式)(掌握)
01.15_Python语言基础(任意进制到十进制的转换)(熟悉)
01.16_Python语言基础(十进制到任意进制的转换图解)(了解)
01.17_Python语言基础(快速的进制转换法)(了解)
01.18_Python语言基础(原码反码补码)(了解)
01.19_Python语言基础(原码反码补码的练习)
01.20_Python语言基础(标识符概述和组成规则)(掌握)
01.21_Python语言基础(常见标识符的命名规则)(掌握)
01.22_Python语言基础(关键字概述和使用)(掌握)
01.23_Python语言基础(控制台输出)(掌握)
01.24_Python语言基础(人机交互–键盘输入)(掌握)

01.01_计算机基础知识(计算机概述)(了解)

  • A:什么是计算机?计算机在生活中的应用举例

    • 计算机(Computer)全称:电子计算机,俗称电脑。是一种能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。
    • 计算机由硬件和软件所组成,没有安装任何软件的计算机称为裸机。
    • 常见的形式有台式计算机、笔记本计算机、大型计算机等。
  • 应用举例

    • 1:科学计算
    • 2、数据处理
    • 3、自动控制
    • 4、计算机辅助设计
    • 5、人工智能
    • 6、多媒体应用
    • 7、计算机网络
  • B:什么是硬件?硬件举例

    • 计算机硬件(Computer Hardware)是指计算机系统中由电子,机械和光电元件等组成的各种物理装置的总称。这些物理装置按系统结构的要求构成一个有机整体为计算机软件运行提供物质基础。
    • 冯.诺依曼体系结构
    • 计算机的硬件分成5大组成部件:运算器、控制器、存储器、输入设备和输出设备。
    • 运算器和控制器是计算机的核心,合称中央处理单元(Central Processing Unit,CPU)或处理器。CPU的内部还有一些高速存储单元,被称为寄存器。其中运算器执行所有的算术和逻辑运算;控制器负责把指令逐条从存储器中取出,经译码后向计算机发出各种控制命令;而寄存器为处理单元提供操作所需要的数据。
    • 存储器是计算机的记忆部分,用来存放程序以及程序中涉及的数据。它分为内部存储器和外部存储器。内部存储器用于存放正在执行的程序和使用的数据,其成本高、容量小,但速度快。外部存储器可用于长期保存大量程序和数据,其成本低、容量大,但速度较慢。
    • 输入设备和输出设备统称为外部设备,简称外设或I/O设备,用来实现人机交互和机间通信。微型机中常用的输入设备有键盘、鼠标等,输出设备有显示器、打印机等。
  • C:什么是软件?软件分类及举例

    • 计算机软件(Computer Software)是使用计算机过程中必不可少的东西,计算机软件可以使计算机按照事先预定好的顺序完成特定的功能
    • 计算机软件按照其功能划分为系统软件与应用软件
    • 系统软件: DOS(Disk Operating System), Windows, Linux, Unix, Mac, Android, iOS,yunOS,winPhone
    • 应用软件:Office QQ聊天 YY语言 扫雷

01.02_计算机基础知识(软件开发和计算机语言概述)(了解)

  • A:什么是软件
    • 按照特定顺序组织的计算机数据和指令的集合
  • B:什么是开发
    • 软件的制作过程
  • C:什么是软件开发
    • 借助开发工具与计算机语言制作软件
  • D:什么是计算机语言
    • 人与计算机之间进行信息交流沟通的一种特殊语言
  • E:计算机语言的分类
    • 机器语言: 机器语言是直接用二进制代码指令表达的计算机语言,指令是用0和1组成的一串代码,它们有一定的位数,并分成若干段,各段的编码表示不同的含义。
    • 汇编语言: 汇编语言是使用一些特殊的符号来代替机器语言的二进制码,计算机不能直接识别,需要用一种软件将汇编语言翻译成机器语言。
      ◦ 高级语言:
    • 使用普通英语进行编写源代码,通过编译器将源代码翻译成计算机直接识别的机器语言,之后再由计算机执行。
    • 高级语言包括C,C++,C#,JAVA,Python

01.03_计算机基础知识(人机交互)(了解)

  • A:人机交互的两种方式
    • a:命令行方式
      • 需要有一个控制台,输入特定的指令,让计算机完成一些操作。较为麻烦,需要记录住一些命令。
    • b:图形化界面方式
      • 这种方式简单直观,使用者易于接受,容易上手操作。

01.04_计算机基础知识(键盘功能键和快捷键)(掌握)

  • 键盘功能键
    • Tab
    • Shift
    • Ctrl
    • Alt
    • 空格
    • Enter
    • Window
    • 上下左右键
    • PrtSc(PrintScreen)屏幕截图
  • B:键盘快捷键
    • Ctrl+A 全选
    • Ctrl+C 复制
    • Ctrl+V 粘贴
    • Ctrl+X 剪切
    • Ctrl+Z 撤销
    • Ctrl+S 保存

01.05_计算机基础知识(如何打开命令提示符(CMD–command))(掌握)

  • win7下如何打开命令提示符?
    • 开始–所有程序–附件–命令提示符
    • 开始–搜索程序和文件–cmd–回车
    • win+r–cmd–回车
  • win10下如何打开命令提示符?
    • 鼠标左击微软小娜–cmd–回车
    • 鼠标右击开始–搜索–cmd–回车
    • 鼠标右击开始–运行–cmd–回车
    • win+r–cmd–回车

01.06_计算机基础知识(常见的DOS命令讲解)

  • d: 回车 盘符切换
  • dir(directory):列出当前目录下的文件以及文件夹
  • cd (change directory)改变指定目录(进入指定目录)
  • cd… : 退回到上一级目录
  • cd: 退回到根目录
  • cls : (clear screen)清屏
  • exit : 退出dos命令行(分割线上的需要掌握,分割线下的了解)
  • ====================================================
  • mkdir (make directory) : 创建目录
  • rd (remove directory): 删除目录
  • del (delete): 删除文件,删除一堆后缀名一样的文件*.txt
  • shutdown -s -t 15:关闭计算的机,-s/r/h表示关机/重启/休眠,-t 15表示15秒之后关机

01.07_Python语言基础(Python语言概述)(了解)

  • Python语言发展史

    • Python的发音与拼写
      • Python的意思是蟒蛇,源于作者喜欢的一部电视剧 (what about C?https://zhidao.baidu.com/question/44451472.html)
    • Python的作者
      • Guido van Rossum(江湖人称-龟叔)
    • Python
      • Python是龟叔在1989年圣诞节期间,为了打发无聊的圣诞节而用C编写的一个编程语言
      • Python正式诞生于1991年
    • Life is shot, you need Python. 人生苦短,我用Python。
    • 编程语言流行排行榜 https://www.tiobe.com/tiobe-index/
  • Python语言的解释器

    • Python的解释器如今有多个语言实现,我们常用的是CPython(官方版本的C语言实现),其他还有Jython(可以运行在Java平台)、IronPython(可以运行在.NET和Mono平台)、PyPy(Python实现的,支持JIT即时编译)
  • Python语言版本

    • Python目前有两个版本,Python2和Python3,最新版分别为2.7和3.7,现阶段大部分公司都在向Python3转进

01.08_Python语言基础(Python语言特点)(了解)

  • 优点
    • 简单————Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。
    • 易学————就如同你即将看到的一样,Python极其容易上手。前面已经提到了,Python有极其简单的语法。
    • 免费、开源————Python是FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。这是为什么Python如此优秀的原因之一——它是由一群希望看到一个更加优秀的Python的人创造并经常改进着的。
    • 高级语言————当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节。
    • 丰富的库————Python标准库确实很庞大。它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、电子邮件、XML、HTML、密码系统、GUI(图形用户界面)。记住,只要安装了Python,所有这些功能都是可用的。
    • 规范的代码————Python采用强制缩进的方式使得代码具有极佳的可读性。
  • 缺点
    • 运行速度,有速度要求的话,用C++改写关键部分吧。
    • 国内市场较小(国内以python来做主要开发的,目前只有一些web2.0公司)。但时间推移,目前很多国内软件公司,尤其是游戏公司,也开始规模使用他。
    • 中文资料匮乏(好的python中文资料屈指可数)。托社区的福,有几本优秀的教材已经被翻译了,但入门级教材多,高级内容还是只能看英语版。
    • 构架选择太多(没有像C#这样的官方.net构架,也没有像ruby由于历史较短,构架开发的相对集中。Ruby on Rails 构架开发中小型web程序天下无敌)。不过这也从另一个侧面说明,python比较优秀,吸引的人才多,项目也多。
    • 不能加密

01.09_Python语言基础(Python使用场景)(了解)

  • Web应用开发
    • YouTube、Google、Yahoo!、NASA、知乎都在内部大量地使用Python。
  • 操作系统管理、服务器运维的自动化脚本
  • * Python编写的系统管理脚本在可读性、性能、代码重用度、扩展性几方面都优于普通的shell脚本。
    
  • 科学计算
    • NumPy,SciPy,Matplotlib可以让Python程序员编写科学计算程序。
  • 桌面软件
  • 服务器软件(网络软件)
  • Python对于各种网络协议的支持很完善,因此经常被用于编写服务器软件、网络爬虫。

01.10_Python语言基础(Python开发环境搭建)(掌握)

  • Python版本和操作系统

    • Python是跨平台的,它可以运行在Windows、Mac和各种Linux/Unix系统上。 在Windows上写Python程序,放到Linux上也是能够运行的。
  • 2.x 还是 3.x

    • 目前,Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的,现在Python正在朝着3.x版本进化,大批的公司和社区人员在编写3.x的代码。
    • 为了保证你能学到最新的知识,我们的教程仍以3.x版本为基础,确切地说,是3.6版本。请确保你的电脑上安装的Python版本是3.6.x,这样,你才能无痛学习这个教程。
  • 在Windows上安装Python

    • 下载Python:https://www.python.org
    • 双击运行下载好的安装包
    • 注意:选上pip和Add python.exe to Path,然后一路点“Next”即可完成安装。
    • 默认会安装到C:\Python36目录下,然后打开命令提示符窗口,敲入python后,会出现两种情况:
      • 情况一:你看到提示符>>>就表示我们已经在Python交互式环境中了,可以输入任何Python代码,回车后会立刻得到执行结果。现在,输入exit()并回车,就可以退出Python交互式环境
      • 情况二:得到一个错误:‘python’不是内部或外部命令,也不是可运行的程序或批处理文件,这说明你可能没有勾选配置环境变量选项。
      • 如果你不知道怎么修改环境变量,建议把Python安装程序重新运行一遍,记得勾上Add python.exe to Path。
  • 在Mac上安装Python

    • 如果你正在使用Mac,系统是OS X 10.8或者最新的系统版本,恭喜你,系统自带了Python 2.7。如果你的系统版本低于10.8,请自行备份系统并免费升级到最新的版本,就可以获得Python 2.7–但是我们今后使用版本是Python3.X。
    • 我们学习使用的Python版本是Python3.x,可以在下面连接下载,然后安装安装到本地。
      • 我们先在官网下载python最新的mac版本软件安装包(https://www.python.org/downloads/release/python-370/)
      • 安装过程中我们要同意软件使用协议
      • 接下来我们选择python软件的安装位置,就选择默认路径
      • 耐心等待python安装程序写入文件,执行安装脚本等操作
      • python软件安装完成后,会出现2个软件一个是配置程序一个是命令行工具
      • 参考资料:https://jingyan.baidu.com/article/e75aca85093cb2142edac609.html
  • 在Linux上安装Python

    • Linux会自带一个Python2.x的版本,这并不影响再次安装一个新的版本.
    • 参考资料:https://blog.csdn.net/qq_27631797/article/details/78962171
  • 安装PyCharm

  • 安装方式和上面基本相同,下载地址:https://www.jetbrains.com/pycharm/

    • 选择免费版本
  • 安装参考资料:https://jingyan.baidu.com/article/f00622286e92f4fbd2f0c855.html

01.11_Python语言基础(第一个Python程序——HelloWorld)(掌握)

  • 创建Python项目
    • 打开PyCharm
    • Create New Project
    • 输入项目名称+选择文件路径+选择解释器
  • 编写项目代码
    • 创建文件夹/包:
      • 右键单击项目–>New–>Directory/Python Package
      • 我们现在使用文件夹,后面会讲到包
      • 创建.py文件:
        • 右键单击包–>New–>Python File–>输入文件名HelloWorld
    • 编写代码:
      • print(“HelloWorld”)
    • 运行项目:
      • 右键单击文件–>Run"HelloWorld"

01.12_Python语言基础(注释概述及其分类)(掌握)

  • 什么是注释
  • 注释的作用
    • 解释说明程序
    • 帮助我们调试错误
  • 注释的分类及讲解
    • 单行注释
    • 多行注释
      • 单引号
      • 双引号

01.13_Python语言基础(进制概述)(了解)

  • 什么是进制
    • 进制:就是进位制,是人们规定的一种进位方法。 对于任何一种进制–X进制,就表示某一位置上的数运算时是逢X进一位。二进制就是逢二进一,八进制是逢八进一,十进制是逢十进一,十六进制是逢十六进一。
    • 例如一周有七天,七进制,一年有十二个月,十二进制
  • 十进制的由来
    • 十进制的由来是因为人类有十个手指
  • 二进制的由来
    • 其实二进制来源与中国,请看史料记载
    • 18世纪德国数理哲学大师莱布尼兹从他的传教士朋友鲍威特寄给他的拉丁文译本《易经》中,读到了八卦的组成结构,惊奇地发现其基本素数(0)(1),即《易经》的阴爻yao- -和__阳爻,其进位制就是二进制,并认为这是世界上数学进制中最先进的。20世纪被称作第三次科技革命的重要标志之一的计算机的发明与应用,其运算模式正是二进制。它不但证明了莱布尼兹的原理是正确的,同时也证明了《易经》数理学是很了不起的。
  • 八进制的由来
    • 任何数据在计算机中都是以二进制的形式存在的。二进制早期由电信号开关演变而来。一个整数在内存中一样也是二进制的,但是使用一大串的1或者0组成的数值进行使用很麻烦。
    • 想把一大串缩短点,将二进制中的三位用一位表示。这三位可以取到的最大值就是7.超过7就进位了,这就是八进制。
  • 十六进制的由来
    • 对于过长的二进制变成八进制还是较长,所以出现的用4个二进制位表示一位的情况,四个二进制位最大是15,这就是十六进制。
  • 不同进制表现同一个数据的形式特点:
    • 进制越大,表现形式越短

01.14_Python语言基础(不同进制数据的表现形式)(掌握)

  • 二进制的数据表现形式
    • 由0,1组成。以0b(b可以大写也可以小写)开头
  • 八进制的数据表现形式
    • 由0,1,…7组成。以0开头
  • 十进制的数据表现形式
    • 由0,1,…9组成。整数默认是十进制的
  • 十六进制的数据表现形式
    • 由0,1,…9,a,b,c,d,e,f(大小写均可)。以0x开头
  • 案例演示,输出不同进制表现100的数据。
    • 0b100
    • 0100
    • 100
    • 0x100

01.15_Python语言基础(任意进制到十进制的转换)(熟悉)

  • 任意进制到十进制的转换原理
    • 系数:就是每一位上的数据。
    • 基数:X进制,基数就是X。
    • 权:在右边,从0开始编号,对应位上的编号即为该位的权。
    • 结果:把系数*基数的权次幂相加即可。
  • 练习
    • 二进制–十进制
    • 八进制–十进制
    • 十六进制–十进制

01.16_Python语言基础(十进制到任意进制的转换图解)(了解)

  • 十进制到任意进制的转换原理
    • 除积倒取余
  • 画图练习
    • 十进制–二进制
    • 十进制–八进制
    • 十进制–十六进制

01.17_Python语言基础(快速的进制转换法)(了解)

  • 8421码及特点
    • 8421码是中国大陆的叫法,8421码是BCD代码中最常用的一种。
    • BCD代码。Binary-Coded Decimal‎,简称BCD,称BCD码或二转十进制代码,亦称二进码十进数。
    • 在这种编码方式中每一位二值代码的1都是代表一个固定数值,把每一位的1代表的十进制数加起来,得到的结果就是它所代表的十进制数码。
      • 通过8421码的方式进行二进制和十进制的相互转换
      • 二进制到八进制的简易方式
      • 二进制到十六进制的简易方式

01.18_Python语言基础(原码反码补码)(了解)

  • 为什么要学习原码反码补码?
    • 后面要学习强制类型转换,如果不知道有原反补会看不懂结果
  • 有符号数据表示法的几种方式
  • 原码
    • 就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。
    • 通过一个字节,也就是8个二进制位表示+7和-7
    • 0(符号位) 0000111
    • 1(符号位) 0000111
  • 反码
    • 正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。
  • 补码
    • 正数的补码与其原码相同;负数的补码是在其反码的末位加1。
  • 那么计算机为什么要使用补码呢?

首先,根据运算法则减去一个正数等于加上一个负数, 即: 1-1 = 1+(-1), 所以计算机被设计成只有加法而没有减法,

而让计算机辨别”符号位”会让计算机的基础电路设计变得十分复杂,于是就让符号位也参与运算,从而产生了反码。

用反码计算, 出现了”0”这个特殊的数值, 0带符号是没有任何意义的。 而且会有[0000 0000]和[1000 0000]两个编码表示0。

设计了补码之后, 负数的补码就是反码+1,正数的补码就是正数本身,从而解决了0的符号以及两个编码的问题: 用[0000 0000]表示0,用[1000 0000]表示-128。 

注意-128实际上是使用以前的-0的补码来表示的, 所以-128并没有原码和反码。
使用补码, 不仅仅修复了0的符号以及存在两个编码的问题, 而且还能够多表示一个最低数。 

这就是为什么8位二进制, 使用补码表示的范围为[-128, 127]。

01.19_Python语言基础(原码反码补码的练习)

  • 已知原码求补码
    • 10110100
  • 已知补码求原码
    • 11101110

01.20_Python语言基础(标识符概述和组成规则)(掌握)

  • 什么是标识符
    • 专业点讲就是给类,方法,变量等起名字时使用的字符序列
    • 说白了就是开发人员在程序中自定义的一些符号和名称,例如变量名或则函数名
  • 标识符的组成规则
    • 英文大小写字母
    • 数字字符
    • 下划线( _ )
  • 标识符注意事项
    • 不能使用关键字
    • 不能数字开头

看一看,下面的标识符哪些是正确的,哪些是错误的?

test1
GUI
G.U.I
my-name
my_name
2and
#and
my*name

mynamemyname

注意:
   在python中的标识符是区分大小写的

01.21_Python语言基础(常见标识符的命名规则)(掌握)

  • 见名知意
    • 起一个有意义的名字,尽量做到一眼看上去就知道它的意思(提高代码可读性),
    • 例如:名字:name 学生:student
  • 驼峰命名法
    • 大驼峰命名法
      • 大驼峰命名法则:每一个单词的首字母都要求大写:
      • 例如:FirstName LastName
    • 小驼峰命名法
      • 第一个单词的首字母小写,从第二个单词开始及后面的单词的首字母大写,
      • 例如:myName aDog
  • 下划线连接法:
    • 在程序中使用”_“连接单词:
    • 例如:first_name
  • 方法或者变量
    • 如果是一个单词全部小写
    • 如果是多个单词,每个单词用下划线( _ )连接

01.22_Python语言基础(关键字概述和使用)(掌握)

  • 什么是关键字
    • 被Python语言赋予特定含义的单词
  • 关键字的特点
    • 组成关键字的全部是字母
  • 查看关键字
    • 方式1(在命令提示符中查看):
      * 进入cmd–>python–>import keyword–>keyword.kwlist
    • 方式2(在pycharm中查看):
      • import keyword
      • print(keyword.kwlist)
  • 关键字的注意事项
    • 关键字是python中已经使用过的标识符,所以不允许开发者自定义和关键字名字相同的标识符
  • 关键字区分大小写

01.23_Python语言基础(控制台输出)(掌握)

  • 生活中的输出:
    • 电力的输出
    • 音视频的输出
  • 软件中的输出
    例如登陆时输入用户名和密码,如果有一个不正确,会出现一个对话框,提示用户重新输入用户名和密码
  • python中的输出
    • 打印提示print(“hello world”)
  • 顺序输出
    • print(“hello world”)
    • print(“给我的卡”)

字符串格式化输出

print("我今年10岁")
print("我今年11岁")

# 字符串格式化输出
# 非格式化输出
age = 10
print("我今年%d岁"%age)#%d表示占位
age = age + 1
print("我今年%d岁"%age)#%d表示占位
age = age + 1
print("我今年%d岁"%age)#%d表示占位

# 在程序中,看到%这样的操作符,是python中的格式化输出
age = 18
name = "xiaoming"
print("我的姓名是%s,年龄为:%d"%(name,age))

# 以上大家注意使用到特殊的字符d/s----->格式符号
"""
常用额格式符号
格式符号         转换
%i               表示一个int类型的元素
%d             有符号的十进制整数
%s             通过字符串格式化
%c             字符
%u             无符号的十进制整数
%o             八进制整数
%x/X           十六进制整数
%e/E           索引符号
%f             浮点实数
"""

换行输出

# 在输出的时候,如果\n那么,此时\n后面的内容会在另一行显示
# 转义字符
print("123456789--------")
print("123456789\n--------")

练习:

编写代码完成一个名片显示
================
姓名:张三
QQ:1234567
手机号:1234567
公司地址:北京市
================

01.24_Python语言基础(人机交互–键盘输入)(掌握)

  • 概述:
    • python3中,使用函数input(),获取用户从键盘输入的数据
    • 例如:
      • high = input(“请输入您的身高:”)
      • print(high)
  • 说明:
    • input()的小括号中放入的是提示信息,用来在获取数据之前给用户的一个简单提示
    • input()会从键盘获取数据以后,会存放到一个变量中
    • input()会把用户输入的任何的数据当作字符串对待

01.25_day01总结

  • 把今天的知识点总结一遍。

你可能感兴趣的:(Python基础)