第一章 Python基础语法

一、python概述

1、什么是python?

  • Python是一种解释型、面向对象、动态数据类型的高级程序设计语言
  • Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年
  • 像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议

2、简介

  • Python 是一种解释型语言

    开发过程中没有了编译这个环节,类似于PHP和Perl语言

  • Python 是交互式语言

    可以在一个Python提示符,直接互动执行程序

  • Python 是面向对象语言

    Python支持面向对象的风格或代码封装在对象的编程技术

  • Python 是初学者的语言

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

3、语言的区别

  • 解释型语言

    • 比如 PHP Python
    • 优点:可移植性较好,只要有解释环境,可在不同的操作系统上运行
    • 缺点:运行需要解释环境,运行起来比编译的要慢,占用资源也要多一些,代码效率低,代码修改后就可运行,不需要编译过程
    • 解释型语言,是在运行的时候将程序翻译成机器语言,所以运行速度相对于编译型语言要慢。
  • 编译型语言

    • C C++ Java
    • 优点:运行速度快,代码效率高,编译后的程序不可修改,保密性较好
    • 缺点:代码需要经过编译方可运行,可移植性差,只能在兼容的操作系统上运行
    • 编译型语言在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个程序的时候,就不用再进行翻译了。

4、发展历史

Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。

Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。

像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议。(通用性公开许可证)

版本:2.xx 3.xx

Python的3.0版本,常被称为Python 3000,或简称Py3k。相对于Python的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0在设计的时候没有考虑向下兼容。

5、特点

  1. 易于学习

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

  2. 易于阅读

    Python代码定义的更清晰

  3. 易于维护

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

  4. 一个广泛的标准库

    Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好

  5. 互动模式

    互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断

  6. 可移植

    基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台

  7. 可扩展

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

  8. 数据库

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

  9. GUI编程

    Python支持GUI可以创建和移植到许多系统调用

  10. 可嵌入

    你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力
    

6、缺点

  • 运行速度慢

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

  • 代码不能加密

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

7、方向

  1. Linux运维

    Linux运维是必须而且一定要掌握Python语言,Python是一门非常NB的编程语言,它可以满足Linux运维工程师的工作需求提升效率,总而提升自己的能力,运维工程师需要自己独立开发一个完整的自动化系统时,这个时候才是真正价值的体现,才能证明自身的能力,让老板重视。

  2. Python Web网站工程师

    我们都知道Web一直都是不可忽视的存在,我们离不开网络,离不开Web,利用Python的框架可以做网站,而且都是一些精美的前端界面,还有我们需要掌握一些数据的应用。

  3. Python自动化测试

    大家都知道,就是Python语言对测试的帮助是非常大的,自动化测试中Python语言的用途很广,可以说Python太强大,掌握和熟悉自动化的流程,方法和我们总使用的各个模板,到现在为止,我了解的Python使用最多的应该是自动化测试。

  4. 数据分析

    我们都知道现在来临了大数据的时代,数据可以说明一切问题的原因,现在很多做数据分析的不是原来那么简单,Python语言成为了做数据分析师的第一首选,它同时可以给工作带来很大的效率。

  5. 人工智能

    我们都知道谷歌制作出了的机器人战胜了一个围棋大师,这个就是目前刚出头的人工智能,当然我们的人工智能时代还没有到来,如果这天来了,生活和世界将会发生翻天覆地的变化,而且现在发展这么快,人工智能的时代不会太远。

二、内存与进制

(1) 内存

概述:

内存 是计算机中的重要的部件之一 它是与cpu进行沟通的桥梁 计算机中所有的程序 都是在内存中进行的 所以 内存的性能对计算机的影响比较大

内存中以二进制形式存储数据

单位:

1T = 1024G

1G = 1024兆

1兆 = 1024k

1k = 1024字节

1字节 = 8bit

内存中 以二进制的形式存储数据的

8bit并不等于某一个二进制数,他只是决定了位宽,也就是8位二进制位宽。bit是位的意思,1字节等于8位,二进制数。

计算机内部的数据都用二进制表示,而每一“位”二进制数字就是1bit,是最小单位,比如二进制的1就是1bit,二进制的1010就是4bit,而每一字节(byte)就由8bit组成。

(2) 进制转换

https://blog.csdn.net/diyu122222/article/details/80692904

  • 十进制

    特性:逢十进一

    数字:0 1 2 3 4 5 6 7 8 9

    计算:1 + 9 = 10

  • 二进制

    特性:逢二进一

    数字:0 1

    计算:1 + 1 = 10

  • 八进制

    特性:逢八进一

    数字:0 1 2 3 4 5 6 7

    计算:1 + 7 = 10

  • 十六进制

    特性:逢十六进一

    数字:0 1 2 3 4 5 6 7 8 9 a b c d e f

    计算:1 + f = 10

(3) 各进制与二进制的转换

  • 十进制转二进制

    公式:倒除取余法 然后将余数 倒着拿出来 左侧不足为 拿0来补充

    1 0001
    2 0010
    3 0011
    4 0100
    5 0101
    6 0110
    7 0111
    8 1000
    9 1001
    10 1010

    转换:10(10) --> 1010 (2)


    8326cffc1e178a822eea2094f703738da977e834.jpg.png
  • 二进制转十进制

    公式:计算每一位的2的位数次方,再相加

    转换:1010(2) --> 0 x 2^0 + 1 x 2^1 + 0 x 2^2 + 1 x 2^3 = 0+2+0+8 = 10(10)

    截屏2020-01-09上午10.03.44.png
  • 二进制转八进制

    公式:【三位一取】从低位开始,每三位得到一个八进制数字,最后高位不足则补0

    转换:010110011(2) --> 263 (8)


    空白-5.png
  • 二进制转十六进制

    公式:【四位一取】从低位开始,每四位得到一个十六进制数字,最后高位不足则补0

    转换:100101100(2) --> 12C (16)

    空白.png
  • 八进制转二进制

    公式:【一转3位】八进制的一位相当于二进制的3三位,计算时按照十进制数字转换

    转换:263(8) --> 010110011(2) (2)

空白-5.png
  • 十六进制转二进制

    公式:【一转4位】十六进制的一位相当于二进制的4位,计算时按照十进制数字转换

    转换:12C(16) --> 100101100 (2)

空白-2-8539556.png

注意:

4位2进制转换为十六进制时 从右侧 开始转换 不足4位的 0补位

转换为2进制

每一个数 除2取余 不足4为 0补位

(4) 直接法

把一个十进制数 直接转换为八进制或者16进制 按照除8和16取余的方式

把159转换为8进制

a9b4330183c5fad089004035bad2fc14.jpeg

把150转换为8进制

把159转换为 16进制

159倒除16 取余数 同上

  1. 有一个八进制数 226 十进制数为 150

    226怎样转换为10进制

    2*8的n次方 和2进制转换一样

  2. 有一个十六进制数 96 十进制数为 150

    9*16的n次方 和2进制转换一样

(2) 编译型语言(强类型语言)

  • C C++ Java
  • 优点: 运行速度快 代码效率高 编译后的程序 不可修改 保密性好
  • 缺点: 代码需要经过编译才能运行 可移植性差 只能在兼容的系统上运行

三、安装环境

Python有俩个版本

  1. python3.6

  2. python2.7

  3. 只有 0.3%是不相同的 print() print ""

  4. Python2.7 和Python3.6
    注意:2.7和3.6语法上有一点点区别 但是 我们可以使用工具将 Python2.7升级为Python3

Python在安装的时候 要将Python的配置加入到环境变量里 这样在终端里打开默认就为 3.6 如果想使用Python默认为 2.7 那么将Python2.7的路径 加到 系统的环境变量里 把系统环境变量最后加上一个分号 然后在把你的路径赋值进去

四、Windows快捷键

  1. calc 计算器
  2. notepad 记事本
  3. mspaint 画图工具
  4. cmd windows终端

五、文件常用后缀

  1. .py python文件
  2. .html/.htm html文件
  3. .css css样式文件
  4. .js js代码的文件
  5. .php PHP文件
  6. .sql SQL文件

六、变量的命名规则

  1. 使用外文

  2. 严格区分大小写

  3. 不能使用关键字

    • 查看关键字的方式

      import keyword

      print(keyword.kwlist)

  4. 统一使用小驼峰的命名规则

    • myName

      classMethod = '小驼峰'
      #变量名 函数名 使用小驼峰
      ClassMethod = '大驼峰'
      #类名统一使用大驼峰
      
  5. 由数字字母下划线组成 不能以数字作为开头

  6. 见名知意

  7. 注意代码的缩进

注意:

在python中 语句的结尾分号 可有可无 但是建议不加

如果多行语句 写在一行的时候 必须添加 作为当前语句的结束

七、变量的赋值

(1) 单一赋值

变量名 = 值

(2) 统一赋值

多个变量为同一个值

变量1 = 变量2 ... = 值

(3) 对称赋值

变量1,变量2... = 值1,值2...

注意:

  1. Python的每句语句的结束 分号可加可不加
  2. 多条语句写在一行必须加分号

八、python的输入和输出

(1) 输出

print(输出的内容)

输出多个值 使用逗号来隔开

print(内容1,内容2...)

实例

print('Hello  World')
print('什么字分开比较爽,合起来比较疼?','什么字?')
print('答:咬')

(2) 输入

input(提示信息)

实例

demo = input("请输入你的内容")# input里面的内容为 提示信息
print('你输入了:',demo)

使用了os模块的例子

#一个可以打开Windows的模块 通过正确的指令
import os
command = input('请输入指令')
os.system(command)

九、代码的注释

作用:
  1. 代码的调试
  2. 解释说明

注意:

被注释的代码和内容 不会被解析

每个语言都有自己的注释 写法上可能不同 但是作用一样

比如:

HTML的注释

css 的注释 /*注释的内容*/

python注释:
(1) 单行注释

语法: #

#单行注释    被注释的代码和内容 不会被解析
(2) 多行注释

“”“注释内容"""

'''注释内容'''

实例:

"""
print('Hello World')
print('Hello World')
print('Hello World')
"""

注意:

  1. 单行注释可以嵌套单行注释
  2. 多行注释可以嵌套单行注释
  3. 多行注释不可以嵌套多行注释 但是如果嵌套的多行注释中没有存在其他的内容 则可以 因为此刻为俩个多行注释

十、变量的删除del

del 变量名

实例

num = 1
num2 = 2
del num  #删除变量num
del num,num2  #删除多个变量
print(num)

案例

import os
command = str(input("输入命令"))
os.system(command)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,968评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,601评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,220评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,416评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,425评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,144评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,432评论 3 401
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,088评论 0 261
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,586评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,028评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,137评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,783评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,343评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,333评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,559评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,595评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,901评论 2 345

推荐阅读更多精彩内容

  • 本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入...
    小小不懂11阅读 3,406评论 2 30
  • Day1 01.helloworld 02.基础语法 03.变量 04.运算符 05.进制转换 01.hellow...
    zhazhaK丶阅读 270评论 0 3
  • 实践重于知识!“做到”才能“得到”! 【高级英才14天父母实践打卡】第8天 一、肯定法(录像机说话孩子做到的好的地...
    happy园阅读 255评论 0 0
  • 生活对理性的人来说是喜剧,对感性的人来说是悲剧。-霍勒斯.沃波尔 专家导读:情绪失控具有危害性,就像脱缰的野马,会...
    yhbred95阅读 705评论 0 0
  • 我叫王琪,是一名马上上初中的学生。我爱幻想,直到有一天。。。 “琪琪,快起床!英语班要迟到啦!七点半了!”我揉揉眼...
    你若走我不留阅读 197评论 0 0