AI智能
改变未来

网安入门须知:Python基础导读


人生苦短,我用 Python —— Life is short,you need Python

Python零基础入门

  • 一、Python 初识
  • 1、Python 简介
  • 2、Python 的优势?
  • 1)学习成本低
  • 2)开发成本低
  • 3)语言生态丰富
  • 3、第一个 Python程序
    • 1)新建 HelloPython.py文件
    • 2)编写代码
    • 3)运行文件
    • 4)修改文件扩展名
  • 二、Python 基础
    • 1、注释
    • 1)使用场景
    • 2)语法规范
    • 3)单行注释
    • 4)多行注释
    • 5)三重引号字符串
  • 2、Python 变量
    • 1)语法规范
    • 2)数据类型
  • 3、Numbers
    • 1)算数运算符
    • 2)整数(int)
    • 3)浮点数(float)
  • 4、String 初识
    • 1)字符串的定义
    • 2)字符串拼接
  • 三、Python 流程控制语句
    • 1、if 条件判断语句
    • 1)基本语法
    • 2)if
    • 3)if else
    • 4)if elif else
  • 2、 while 循环语句
    • 1)基本语法
    • 2.2 列表
    • 2.3 字典

    一、Python 初识

    1、Python 简介

    Python是一种「基于C语言实现的」的,「开源」的,「面向对象」的,「动态数据类型」的「解释型」语言。
    1989年圣诞节期间,Python的「创始人吉多·范罗苏姆」(Guido van Rossum)为了打发无聊的时间,开发出了一款解释型语言,命名为Python(蟒蛇),并于1991年公开发行。

    2、Python 的优势?

    1)学习成本低

    Python的所有内容都是免费开源的,这意味着你不需要话一分钱就可以「免费使用」Python;Python的语法简单且优雅,相对于其他语言「学习难度较低」,入门非常快。

    2)开发成本低

    在互联网上流传着这么一个笑话,说同样一个功能, 「C语言」需要 100 行代码才能实现,「Java」需要 10 行代码就能实现,而「Python」只需要 1 行代码就能实现。
    Python有丰富的「库」可以使用,这些库提供了大量的「基础实现」,在编码过程中,可以方便的使用这些库,从而避免了大量代码的编写过程。代码量的下降意为着「开发周期」的缩短,这在一定程度上减轻了程序员的开发负担,同时提高了开发的「效率」,正因如此,在Python领域流传着这样一句话:「人生苦短,我用Python」

    3)语言生态丰富

    由于开源的特性,Python具有丰富且强大的第三方库,这使得Python在web开发,数据分析等领域都有着广泛的应用,随着大数据和人工智能的发展,Python的上升趋势非常明显,甚至一度超过C语言和Java,首次成为「最受欢迎的程序语言」。

    3、第一个 Python程序

    1)新建 HelloPython.py文件

    选择一个空旷的目录,在里面新建一个「文本文件」,文件名为 HelloPython.txt

    2)编写代码

    双击打开文件(或使用任意文本编辑器打开文件),在文件中输入以下内容

    print('Hello Python')


    按 Ctrl+s 保存文件,而后关闭文件。

    3)运行文件

    在当前目录下打开cmd (目录上方的地址栏中输入cmd,回车)

    在打开的cmd中输入以下命令,执行 HelloPython.txt文件

    python HelloPython.txt

    我们可以看到,窗口中输出了 HelloPython,第一个Python程序完成了

    4)修改文件扩展名

    虽然普通的文本文件就可以执行Python代码,但为了提高辨识度,我们尽量将Python文件的「后缀名」写成

    .py

    右键文件选择重命名,将文件后缀名由

    .txt

    修改为

    .py

    ,如果出现以下提示,点击是即可


    修改后的文件是下面这样


    接下来,在cmd中输入以下命令,运行 HelloPython.py文件

    python HelloPython.py

    修改文件名后,仍然可以正常输出 Hello Python

    二、Python 基础

    1、注释

    Python中的代码都是用「英语」写的,对于母语不是英语的我们来说,「阅读」英语的代码,肯定没有阅读「汉字」那么方便。我之前做开发的时候就深有体会,上午才写完的代码,下午再去看,就已经看不太懂了(手动捂脸)。当然,这是我自己写的代码,从头到尾捋一遍还是能明白的。那么问题来了,自己写的代码就已经这么难看懂了,要是看别人写的代码,岂不是要读天书?这个时候我们就可以使用「注释」了,注释就是对代码的「理解」和「说明」,可以帮助开发者了解代码的含义

    1)使用场景

    比如我们刚写完了一行代码,为了防止下次再看的时候不知道这行代码是什么意思,就可以在代码上方写上一行注释。

    # 这行代码的意思是定义一个变量name = '张三'

    需要注意的是:注释后面的内容「不会被当做代码编译执行」,仅仅起到「辅助说明」的作用

    2)语法规范

    Python作为一款「优雅」的语言,对于代码的「语法格式」有着近乎「苛刻」的「规范」,这其中自然也包括注释

    1. Python注释通常以 # 开头
    2. 注释「单独一行」时, # 「左边」需要「顶格」写,不允许有空格; # 「右边」和注释内容之间需要有一个「空格」作为「间隔」,以增加代码的「可读性」
    3. 注释写在「代码后面」时, # 「左边」需要有「两个空格」, # 「右边」和注释内容之间需要有一个「空格」作为「间隔」

    3)单行注释

    单行注释是Python注释的一种使用方式,顾名思义,就是「只占一行」的注释,当行注释可以写在代码「上方」,也可以写在代码「右方」

    案例1:在代码的上方编写注释

    # 单行注释print('hello Python')

    案例2:在代码的右方编写注释

    print('hello Python')  # 单行注释

    4)多行注释

    多行注释是Python注释的另一种使用方式,顾名思义,就是「占据多行」的注释,多行注释通常写在代码的上方用于解释代码的作用,同时可以间隔上下两段代码,增加代码的可读性。

    案例3:在代码上方编写注释,解释整段代码的作用

    # 这段代码的作用是# 作用一:***# 作用二:***print('假装是一段代码')

    5)三重引号字符串

    除了上面提到的单行注释和多行注释以外,Python中还提供了另一种注释来代替多行注释,也就是「三重引号字符串」,使用时只需要建立一个「没有名字」的三重引号字符串即可。顾名思义,三重引号字符串并不是严格意义上的注释,只能当做一种多行注释的书写方式。

    三重引号字符串有两种书写方式:「单引号多行注释」和「双引号多行注释」

    顾名思义,单引号多行注释就是用三个「单引号」包裹的三重引号字符串,双引号多行注释就是用三个「双引号」包裹的三重引号字符串

    需要注意的是:无论是单引号多行注释还是双引号多行注释,引号都必须是「英文状态」下的引号,并且引号左侧需要「顶格」写

    案例4:在代码段上方编写单引号多行注释,解释整段代码的作用

    '''这段代码的作用是:作用一:***作用二:***'''print('假装是一段代码')

    案例5:在代码段上方编写双引号多行注释,解释整段代码的作用

    """这段代码的作用是:作用一:***作用二:***"""print('假装是一段代码')

    2、Python 变量

    变量可以理解为一个「临时存储数据」的媒介,并且这个存储的数据是可以改变的。

    举个栗子

    比如,我的存款是100块钱,这个存款就可以理解为一个「变量」,存款有100块钱,就可以理解为变量中存储的「数据」数据为100,如果我把这个月的50块钱工资放到我的存款里,存款由100块钱变成了150块钱,相对应的,这个名为存款的变量也会发生「改变」,变量存储的数据由100变成了150。

    接下来,我们用代码的方式来打开上面的栗子

    # 我的存款是100块钱存款 = 100# 我将50块钱工资放到存款中存款 = 存款 + 50# 存款发生了变化,最终的存款是print(存款)

    程序打印的存款结果如下:

    1)语法规范

    需要注意的是:上述的栗子中,我们的变量名使用的是「中文」的存款,目的是为了更好的理解变量的含义,而在实际情况中,尽量「不要使用中文作为变量名」,这是Python中对于变量的规定,除此之外,Python还对变量的语法做了以下规定:

    1. 变量不需要「声明」,变量的「赋值操作」即是变量声明和定义的过程
    2. 变量使用等号(=)赋值,变量被赋值以后才会被「创建」,未赋值的变量不能被使用
    3. 等号(=)左边是「变量名」变量名,右边是存储在变量的「值」,即
      变量名 = 变量值
    4. 定义变量时,不需要指定「变量类型」,程序运行时,Python解释器会根据等号右侧的数据自动推导出数据类型

    2)数据类型

    大家上学的时候肯定都学过数学,数学中有整数、小数、分数、集合等各种各样类型的数据,同样的,在Python中也有不同的「数据类型」,Python中提供了种标准的数据类型:

    • Numbers(数字)
    • String(字符串)
    • List(列表)
    • Tuple(元组)
    • Dictionary(字典)

    3、Numbers

    Python中使用Numbers来表示「数字类型」,数字类型包括「整数」和「小数」等多种类型,在Python中,整数用int来表示,小数用float来表示

    1)算数运算符

    算数运算符就是数学中的加减乘除,这个。。。不多说了,看图

    2)整数(int)

    「整数」就是没有小数位(小数位都是0)的数、能被1整除的数。为了方便数据类型的学习,这里先扩展一个函数:type(),type()函数可以用来「检查数据的类型」,并返回检查的结果。接下来我们通过几个案例来了解一下变量的使用

    案例1:查看变量类型

    定义一个整数类型的变量,用type()查看变量的类型,并将结果打印出来

    代码实现

    # 定义一个整数类型的变量number = 1# 判断变量类型result = type(number)# 打印变量类型print(result)

    程序执行结果如下

    案例2:苹果的价格

    已知:苹果的单价是3元,张三要买2个苹果
    请问:张三需要付多少钱?

    代码实现

    # 苹果单价是3元apple = 3# 苹果的数量是2number = 2# 总价 = 单价 * 数量money = apple * numberprint(money)

    程序执行结果如下

    3)浮点数(float)

    浮点数就是小数

    案例3:检查数据类型

    定义一个小数类型的变量,使用type()查看变量的类型,并将结果输出

    代码实现

    # 定义一个小数类型的变量number = 1.5# 检查变量的类型result = type(number)# 打印变量类型print(result)

    程序执行结果如下

    案例4:苹果的价格

    已知:苹果的单价是1.5元,张三需要购买3个苹果
    请问:张三需要付多少钱?

    代码实现

    # 苹果的价格是1.5apple = 1.5# 苹果的数量是3number = 3# 总价 = 价格 * 数量result = apple * number# 打印结果print(result)

    程序执行结果如下

    4、String 初识

    字符串是由「数字」、「字母」、「下划线」组成的一串字符,常用来表示文本,比如商品的描述信息或用户的评论。

    1)字符串的定义

    字符串有两种定义方式,一种是「单引号」包裹的字符串,一种是「双引号」包裹的字符串,需要注意的是:必须是英文状态下的引号。

    str1 = '单引号字符串'str2 = "双引号字符串"

    2)字符串拼接

    加号(+)可以将两个或多个字符串「拼接」到一起
    称号(*)可以将字符串「重复拼接」多次

    接下来,我们通过几个案例来简单了解一下字符串的拼接情况

    案例5:加号(+)拼接两个数字

    定义两个数字类型的变量,使用加号(+)拼接两个「数字」类型的变量,观察拼接的结果

    代码实现

    # 定义一个数字number1 = 2# 定义第二个数字number2 = 3# 输出两个数字的拼接结果print(number1 + number2)

    程序执行结果如下

    由以上结果可知,使用加号(+)拼接两个数字类型的变量时,执行的操作是「相加」

    案例6:加号(+)拼接两个字符串

    定义两个「字符串」类型的变量,使用加号(+)拼接两个变量,观察拼接的结果

    代码实现

    # 定义一个字符串str1 = "abc"# 定义第二个字符串str2 = "def"# 输出两个字符串的拼接结果print(str1 + str2)

    程序执行结果如下

    由以上结果可知,使用加号(+)拼接两个字符串类型的变量时,执行的操作是「拼接」

    案例7:使用加号(+)拼接字符串和数字

    定义一个字符串类型的变量,定义一个数字类型的变量,使用加号(+)拼接这两个变量,观察拼接的结果

    代码实现

    # 定义一个字符串str1 = "abc"# 定义一个数字number = 2# 输出两个字符串的拼接结果print(str1 + number)

    程序执行结果如下

    报错了,说明字符串和数字之间不能使用加号(+)拼接

    案例8:打印10个星号(*)

    这里可以手动打印10个星号

    *

    ,但如果题目改成打印1000个星号

    *

    呢,肯定不能用手动打印啊,这里我们可以利用星号

    *

    来「重复」打印字符串。

    定义一个字符串,字符串的值是*,定义一个数字,数字的值是10,使用星号

    *

    拼接两个变量

    代码实现

    # 定义一个字符串str1 = '*'# 定义一个数字number = 10# 打印字符串和数字的拼接结果print(str1 * number)

    程序执行结果如下

    三、Python 流程控制语句

    一个程序往往包含多条代码,流程控制就是控制这些代码的「执行顺序」和「执行机会」的规则

    Python中提供了三种流程控制语句

    • 顺序执行
    • 分支执行
    • 循环执行

    顺序执行

    顾名思义,就是按照从上往下的顺序「依次执行」代码,这是最常见的一种执行流程,也是程序「默认」的执行流程


    分支执行

    分支执行根据「判断条件」来决定代码的执行机会,只有满足条件的代码分支才会被执行,未满足条件的代码分支则不会被执行


    循环执行

    循环执行常用来「重复」执行某一段代码,从而提高程序员的开发效率

    1、if 条件判断语句

    灾难电影中经常会面临一些令人绝望的场景,比如:大船快要沉了,幸运的是,有一些小的救生艇,但救生艇的数量有限,只能送走一小部分人,这时候就会有人喊出一句响亮的口号:让老人和孩子先走!

    这时候就需要制定一个判断「条件」,也就是老人和孩子,如果满足这个条件,就可以做救生艇逃走;否则就必须留下来。

    这个场景用代码来表示可以是下面这样

    if 老人和孩子:满足条件,做救生艇逃走else:不满足条件,留下来

    1)基本语法

    上面的栗子只是为了方便大家理解,if 条件判断语句的正确「语法」应该是下面这样的

    if 判断条件:条件成立时,要做的事情else:条件不成立时,要做的事情

    接下来,我们使用代码「还原」一下上面的场景

    案例1:老人优先

    轮船上的众人面临「沉船」的风险,现有救生艇若干
    如果是老人,则可以乘坐救生艇「逃走」
    否则就留下来面对「危险」

    代码实现

    # 定义人物属性man = '老人'# 判断是否是老人if man == '老人':print('老人快跑')else:print('年轻人,面对困难')

    程序执行结果如下

    2)if

    if 条件判断语句并不是非得写成案例1的样子,最「简单」的语法格式是下面这样

    if 条件判断:满足条件执行的代码

    这种语法格式可以简单理解为:如果怎么样,就怎么样。接下来,我们通过一个案例来简单了解一下

    案例2:判断成绩

    张三考试回家把试卷交给爸爸,爸爸说:
    如果考一百分,爸爸就「奖励」你一个棒棒糖

    代码实现

    # 定义张三的成绩zhangsan = 100# 判断成绩if zhangsan >= 100:print('棒棒糖x1')

    代码执行结果如下

    3)if else

    if else 是if 条件判断语句的「常规」格式,可以简单理解为:如果怎么样,就怎么样,否则就怎么样。接下来,我们通过案例来简单了解一下

    案例3:判断年龄

    定义一个变量来存储「年龄」
    如果年龄大于18岁,则可以去网吧玩「游戏」
    否则就只能回家写「作业」

    # 定义年龄age = 18# 判断年龄if age >= 18:print('去网吧玩游戏')else:print('滚回家写作业')

    程序执行结果如下

    4)if elif else

    则是if 条件判断语句的第三种格式,适用于较「复杂」的判断情况,语法格式如下:

    if 判断条件:条件成立时,要做的事情elif 判断条件:if条件不成立,但elif条件成立时,要做的事情else:条件都不成立时,要做的事情

    接下来,我们通过案例来简单了解一下

    案例4:判断成绩

    张三考试回家把试卷扔给爸爸,爸爸说:
    如果考一百分,就给你找个「女朋友」
    如果没考一百分,但成绩大于90分,就给你买个「熊」
    否则,我就不认你这个「儿子」

    代码实现

    # 定义张三的成绩zhangsan = 100# 判断成绩if zhangsan >= 100:print('女朋友x1')elif zhangsan >= 90:print('玩具熊x1')else:print('儿子-1')

    程序执行结果如下

    2、 while 循环语句

    while 循环语句用于「循环」执行程序,即在条件「成立」的情况下,循环执行某段程序,常用来重复执行的相同任务。

    1)基本语法

    while 判断条件:条件满足时,做的事情1条件满足时,做的事情2...处理条件

    可以简单理解为:如果满足条件,就做某件事,接下来我们通过几个案例来简单了解一下

    案例1:打印1~5

    i = 1while i <= 5:print(i)i += 1

    案例2:打印小星星

    在控制台连续输出五行*, 每一行星星的数量依次「递增」

    i = 1while i <= 5:print('*' * i)i += 1

    运行结果如下

    2.2 列表

    【列表 List】是Python中使用 最频繁 的数据类型,在其他语言中通常叫做 数组 ,列表用来存储 一串数据 ,数据和数据之间使用 逗号 分隔

    列表的定义格式

    names = [‘张三’, ‘李四’, ‘王五’]

    列表的遍历

    di = [11, 22, 33, 44]for di in ids:print('my id is %d' % di)

    列表的常用函数

    2.3 字典

    字典是Python中除列表外, 最灵活的数据类型 ,使用键值对存储数据,其中键必须是唯一的,值可以是任意类型

    基础格式

    student = {‘name’: ‘小明’, ‘age’: 18, ‘id’: 1}

    字典遍历

    for key in student:print('%s : %s' % (key, student[key]))

    常用函数

  • 赞(0) 打赏
    未经允许不得转载:爱站程序员基地 » 网安入门须知:Python基础导读