B站小甲鱼python学习笔记

000 愉快的开始

视频地址: https://www.bilibili.com/video/BV1xs411Q799?p=1
在这里插入图片描述
python跨平台
在这里插入图片描述

应用范围:

  • 操作系统、WEB、3D动画、企业应用、云计算

在这里插入图片描述

大家可以学到什么:

  • Python3的所有常用语法、面向对象编程思维、运用模块进行编程、游戏编程、计算机仿真

在这里插入图片描述

Python 是脚本语言

脚本语言(Scripting language)是电脑编程语言,因此也能让开发者藉以编写出让电脑听命行事的程序。以简单的方式快速完成某些复杂的事情通常是创造脚本语言的重要原则,基于这项原则,使得脚本语言通常比C 语言、C++语言 或 Java 之类的系统编程语言要简单容易。也让脚本语言另有一些属于脚本语言的特性:

  • 语法和结构通常比较简单
  • 学习和使用通常比较简单
  • 通常以容易修改程序的“解释”作为运行方式,而不需要“编译”
  • 程序的开发产能优于运行性能

一个脚本可以使得本来要用键盘进行的相互式操作自动化。一个 Shell 脚本主要由原本需要在命令行输入的命令组成,或在一个文本编辑器中,用户可以使用脚本来把一些常用的操作组合成一组串行。主要用来书写这种脚本的语言叫做脚本语言。很多脚本语言实际上已经超过简单的用户命令串行的指令,还可以编写更复杂的程序。

IDLE 是一个 Python Shell,shell 的意思就是外壳,基本上来说,就是一个通过键入文本与程序交互的途径!像我们 Windows 那个 cmd 窗口,像 Linux 那个黑乎乎的命令窗口,他们都是 shell,利用他们,我们就可以给操作系统下达命令。同样的,我们可以利用 IDLE 这个 shell 与 Python 进行互动。

注:在 Python 中不能把两个完全不同的东西加在一起,比如说数字和文本

如果我需要在一个字符串中嵌入一个双引号,正确的做法是:你可以利用反斜杠(\)对双引号转义:\",
或者用单引号引起这个字符串

001 我和Python的第一次亲密接触

安装Python

下载地址: http://www.python.org, 这里下载最新版3.9.5

在这里插入图片描述从IDLE启动Python

IDLE是一个Python Shell,shell的意思就是“外壳”,基本上来说,就是一个通过键入文本与程序交互的途径!

我们看到>>>这个提示符,Ta的含义是告诉你,Python已经准备好了,在等着你键入Python指令呢。

好了,大家试试在IDLE里输入:

在这里插入图片描述
在这里插入图片描述

输入前妻系列和小三系列都是错误的
在这里插入图片描述

我们尝试点儿新的东西,我们输入

>>>print(5+3)

在这里插入图片描述
或者直接输入

>>>5+3

在这里插入图片描述
•不妨在试试计算

>>>1234567890987654321*987654321012345678

在这里插入图片描述

还有我们可以将两个字符串“相加”在一起,这种做法叫做拼接字符串

在这里插入图片描述
•先试试

>>> print("I love fishc.com"*2)

在这里插入图片描述
•和

>>> print("I love fishc.com\n"* 4)

在这里插入图片描述
既然乘法可以,那我们不妨试试加法

>>> print("I love fishc.com\n"+4)

由此可见,加法是不行的
在这里插入图片描述

002 用Python设计第一个游戏

实例1:
在这里插入图片描述

print('----------我爱鱼C工作室----------')
temp=input("不妨碍一下小甲鱼现在心里想的是哪个数字:")
guess=int(temp)
if guess==8:
	print("我草,你是小甲鱼心里的蛔虫吗? !")
	print("哼,猜中了也没有奖励! ")
else:
	print("猜错啦,小甲鱼现在心里想的是8 !")
print("游戏结果,不玩啦^_^")

在这里插入图片描述
BIF 就是 Built-in Functions,内置函数。为了方便程序员快速编写脚本程序(脚本就是要编程速度快快快!!!),Python 提供了非常丰富的内置函数,我们只需要直接调用即可,例如 print() 的功能是“打印到屏幕”,input() 的作用是接收用户输入。

在 Python 或 IDLE 中,输入 dir(__builtins__) 可以看到 Python 提供的内置方法列表(注意,builtins 前后是两个下划线哦)其中小写的就是 BIF。如果想具体查看某个BIF 的功能,比如 input(),可以在 shell 中输入 help(input),就会得到这个 BIF 的功能描述。哦,答案应该是 68 个

>>> dir(__builtins__)  查看 Python 提供的内置方法列表

在这里插入图片描述

>>> help(input)  查看input的具体使用说明 

在这里插入图片描述
注:

  • 只有当标识符已经赋值后( Python 的变量是不用先声明的)才能在代码中使用,未赋值的标识符直接使用会导致运行时错误
  • 缩进是 Python 的灵魂
  • Python 不允许 if 条件中赋值,所以 if c = 1: 会报错!

003 小插曲之变量和字符串

插曲之变量

  • 变量名就像我们现实社会的名字,把一个值赋值给一个名字时,Ta会存储在内存中,称之为变量(variable),在大多数语言中,都把这种行为称为给变量赋值把值存储在变量中
  • 不过Python与大多数其他计算机语言的做法稍有不同,Ta并不是把值存储在变量中,而更像是把名字贴在值的上边。
  • 所以有些Python程序员会说“Python”没有“变量”,只有“名字”。

在这里插入图片描述
在这里插入图片描述

需要注意的地方

  1. 在使用变量之前,需要对其先赋值。

  2. 变量名可以包括字母、数字、下划线,但变量名不能以数字开头。

  3. 字母可以是大写或小写,但大小写是不同的。也就是说fishc和FishC对于Python来说是完全不同的两个名字

  4. 等号(=)是赋值的意思,左边是名字,右边是值,不可写反咯。

  5. 变量的命名理论可以取任何合法的名字,但作为一个优秀的程序员,请将尽量给变量取一个专业点儿的名字:

在这里插入图片描述

插曲之字符串

到目前为止,我们所认知的字符串就是引号内的一切东西,我们也把字符串叫做文本,文本和数字是截然不同的,咱看例子:>>>5+8

>>> 5+8
>>> '5'+'8'

在这里插入图片描述

要告诉Python你在创建一个字符串,就要在字符两边加上引号,可以是单引号或者双引号,Python女士表示不挑剔。但必须成对,你不能一边单引号,另一边却花心的用上双引号结尾。

在这里插入图片描述

  • 如果字符串中需要出现单引号或双引号怎么办?

    例如我想打印字符串:Let’s go!

  • 有两种方法,第一种比较常用,就是使用我们的转义符号(\)对字符串中的引号进行转义:

在这里插入图片描述

原始字符串

  • 好像反斜杠是一个好东西,但不妨试试打印:
>>> str = 'C:\now'

在这里插入图片描述

  • 我们可以用反斜杠对自身进行转义:
>>> str = 'C:\\now'

在这里插入图片描述

  • 原始字符串的使用非常简单,只需要在字符串前边加一个英文字母r即可(则都会以原始字符串输出):
>>>str = r'C:\now'

在这里插入图片描述

长字符串

  • 如果希望得到一个跨越多行的字符串,例如:
我爱鱼C,
正如我爱小甲鱼,
他那呱唧呱唧
呱唧呱唧
呱唧呱唧的声音,
总缠绕于我的脑海,
久久不肯散去......

这我们就需要使用到三重引号字符串!

在这里插入图片描述

004 改进我们的小游戏

在这里插入图片描述
在这里插入图片描述

条件分支

在这里插入图片描述

代码磁贴

在这里插入图片描述

组装磁贴

在这里插入图片描述

实例1:

  • 第一个改进要求:猜错的时候程序提示用户当前的输入比答案大了还是小了
print('----------我爱鱼C工作室----------')
temp=input("不妨碍一下小甲鱼现在心里想的是哪个数字:")
guess=int(temp)
if guess==8:
	print("我草,你是小甲鱼心里的蛔虫吗? !")
	print("哼,猜中了也没有奖励! ")
else:
        if guess>8:
                print("哥,大了,大了~~~")
        else:
                print("嘿,小了,小了~~~")    
print("游戏结果,不玩啦^_^")

在这里插入图片描述

实例2:

  • 第二个改进要求:程序应该提供多次机会给用户猜测,专业点来讲就是程序需要重复运行某些代码。
    在这里插入图片描述
print('----------我爱鱼C工作室----------')
temp=input("不妨碍一下小甲鱼现在心里想的是哪个数字:")
guess=int(temp)
while guess !=8:
        temp=input("哎呀,猜错了,请重新输入吧:")
        guess=int(temp)
        if guess==8:
                print("我草,你是小甲鱼心里的蛔虫吗? !")
                print("哼,猜中了也没有奖励! ")
        else:
                if guess>8:
                        print("哥,大了,大了~~~")
                else:
                        print("嘿,小了,小了~~~")
                
print("游戏结果,不玩啦^_^")

在这里插入图片描述

实例3:

  • 每次运行程序,答案可以是随机的。因为程序答案固定,容易导致答案泄露
random模块里边有一个函数叫做:randint(),Ta会返回一个随机的整数。
import random
secret=random.randint(1,10)
print('----------我爱鱼C工作室----------')
temp=input("不妨碍一下小甲鱼现在心里想的是哪个数字:")
guess=int(temp)
while guess !=secret:
        temp=input("哎呀,猜错了,请重新输入吧:")
        guess=int(temp)
        if guess==secret:
                print("我草,你是小甲鱼心里的蛔虫吗? !")
                print("哼,猜中了也没有奖励! ")
        else:
                if guess>secret:
                        print("哥,大了,大了~~~")
                else:
                        print("嘿,小了,小了~~~")
                
print("游戏结果,不玩啦^_^")

在这里插入图片描述在这里插入图片描述在这里插入图片描述

005 闲聊之Python的数据类型

Python的一些数值类型:整型、布尔类型(True与False)、浮点型、e记法、复数类型等

在这里插入图片描述

e记法(e4相当于10的四次方,e-10相当于10的-10次方)
在这里插入图片描述
类型转换
在这里插入图片描述

字符型转换为整型
在这里插入图片描述
浮点型转为整型
在这里插入图片描述
整型转为浮点型
在这里插入图片描述
浮点型转为字符串
在这里插入图片描述

在这里插入图片描述

type()函数(可查看变量类型)
在这里插入图片描述
isinstance()函数(用来判断两个输入参数类型是否一致)
在这里插入图片描述

006 Pyhon之常用操作符

算术操作符

在这里插入图片描述
在这里插入图片描述

注:python中 \ 为除法, \\ 为整除 ,% 为取余

幂运算(3的二次方)

在这里插入图片描述
3的二次方后取负
3的负二次方
在这里插入图片描述
在这里插入图片描述
优先级问题:

注:先幂运算、然后乘除、后加减、后逻辑

比较操作符

在这里插入图片描述
逻辑操作符

在这里插入图片描述
在这里插入图片描述

优先级问题

在这里插入图片描述

007 了不起的分支和循环

在这里插入图片描述

打飞机游戏框架:

加载背景音乐

播放背景音乐(设置单曲循环)

我方飞机诞生

while True:
    if 用户是否点击了关闭按钮:
       推出程序
       
    interval += 1;
    if interval == 50:
       interval = 0;
       小飞机诞生
    小飞机移动一个位置
    屏幕刷新
    
    if 用户鼠标产生移动:
       我方飞机中心位置 = 用户鼠标位置
       屏幕刷新
       
    if 我方飞机与小飞机发生肢体冲突:
       我方挂,播放撞机音乐
       修改我方飞机图案
       打印“Game over"
       停止背景音乐,最好淡出

008 了不起的分支和循环2

现在小甲鱼来考考大家:

按照100分制,90分以上成绩为A,80到90为B,60到80为C,60以下为D,写一个程序,当用户输入分数,自动转换为ABCD的形式打印。

解题方案:

  • method1.py
  • method2.py
  • method3.py

method1.py

在这里插入图片描述
method2.py
在这里插入图片描述
method3.py
在这里插入图片描述

Python 可以有效避免悬挂else

什么叫悬挂else?
  • 假设下面 else 是与第一个 if 匹配,C语言中 else 会与最近的 if 匹配

在这里插入图片描述

条件表达式(三元操作符)

有了这个三元操作符的条件表达式,你可以使用一条语句来完成以下的条件判断和赋值操作:

x, y = 4, 5

if x < y:

  small = x

else:

  small = y

例子可以改进为

small = x if x < y else y    #如果x小于y,则small等于x,否则等于y

断言(assert)

  • assert这个关键字我们称之为“断言”,当这个关键字后边的条件为假的时候,程序自动崩溃并抛出AssertionError的异常。

举个例子:

在这里插入图片描述

一般来说我们可以用Ta再程序中置入检查点,当需要确保程序中的某个条件一定为真才能让程序正常工作的话,
assert关键字就非常有用了。

009 了不起的分支和循环3

while循环

while 条件:

   循环体

for循环

虽然说Python是由C语言编写而来的,但是Ta的for循环跟C语言的for循环不太一样,Python的for循环显得更为智能和强大!

语法:

for 目标 in 表达式:

     循环体

在这里插入图片描述
每次取FishC中一个字符及空格输出

在这里插入图片描述
range()函数

  • 语法:range( [strat],[stop],[step] )

–这个BIF有三个参数,其中用中括号括起来的两个表示这两个参数是可选的。

step=1表示第三个参数的值默认值是1。step为每步距离

range这个BIF的作用是生成一个从start参数的值开始到stop参数的值结束的数字序列。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
break语句(结束本层循环)

实例:

bingo='小甲鱼是帅哥'
answer=input('请输入小甲鱼最想听的一句话:')

while True:
    if answer==bingo:
        break
    answer=input('抱歉,错了,请重新输入(答案正确才能退出游戏):')

print('哎哟,帅哦~')
print('您真是小甲鱼肚子里的蛔虫啊^_^')

在这里插入图片描述
continue语句(当前位置结束本次循环,重新开始下次循环)

for i in range(10):
    if i%2 !=0:
        print(i)
        continue
    i+=2
    print(i)
    

在这里插入图片描述

010 列表:一个打了激素的数组

列表:一个打了激素的数组
在这里插入图片描述

创建列表

  • 创建一个普通列表
    在这里插入图片描述
  • 创建一个混合列表
    在这里插入图片描述
  • 创建一个空列表
    在这里插入图片描述

向列表添加元素
在这里插入图片描述
append()函数向列表末尾添加一个元素

在这里插入图片描述
extend()函数向列表末尾添加多个元素

在这里插入图片描述
insert(n,xxx)函数向列表中第n个元素前插入一个元素

在这里插入图片描述

011列表:一个打了激素的数组2

  1. 从列表中获取元素
  • 跟数组一样,我们可以通过元素的索引值(index)从列表获取单个元素,注意,列表索引值是从 0 开始的。
    在这里插入图片描述
  1. 从列表删除元素
    在这里插入图片描述
  • remove()函数表示从列表中删除某个元素
    在这里插入图片描述
  • del()函数也表示从列表中删除某个元素
    在这里插入图片描述
  • pop()函数从列表中取出最后一个元素
    在这里插入图片描述
  1. 列表分片(Slice)
    - 利用索引值,每次我们可以从列表获取一个元素,但是我们总是贪心的,如果一次性需要获取多个元素,有没有办法实现呢?利用列表分片,我们可以简单的实现这个要求。在这里插入图片描述
  • member[1:3]表示从第2个元素开始拷贝,一共拷贝两个元素,即member[1]和member[2]列表的拷贝

012列表:一个打了激素的数组3

列表的一些常用操作符

  • 比较操作符
    在这里插入图片描述
  • 逻辑操作符
    在这里插入图片描述
  • 连接操作符
    在这里插入图片描述
  • 重复操作符
    在这里插入图片描述
  • 成员关系操作符
    在这里插入图片描述在这里插入图片描述

dir(list)可查看所有列表的操作函数
在这里插入图片描述

  • count 统计元素在列表出现的次数
    在这里插入图片描述
  • sort 对列表从小到大排序
    在这里插入图片描述
  • reverse 对列表元素反转
    在这里插入图片描述
  • index()函数可索引列表元素
    在这里插入图片描述

关于分片“拷贝”概念的补充

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

注:list13=list11相当于多了个指向列表的标签,list12 = list[:]是实实在在的拷贝

013元组:戴上了枷锁的列表

在这里插入图片描述
我们主要从以下几个点来讨论学习:

创键和访问一个元组

创建元组(括号可以没有,但逗号一定要有)

在这里插入图片描述

访问元组前五个元素

在这里插入图片描述

  • 更新和删除一个元组
更新一个元组

在这里插入图片描述

注:其并未对原元组进行修改,而是生成了一个新的元组,并贴上temp名字标签而已。原元组由于标签没有了,则会被自动回收。

删除一个元组

在这里插入图片描述

元组相关的操作符

在这里插入图片描述
注:元组不允许修改和删除。

014字符串:各种奇葩的内置方法

在这里插入图片描述在这里插入图片描述

capitalize把字符串的第一个字符改为大写

在这里插入图片描述

casefold把整个字符串的所有字符改为小写

在这里插入图片描述

center(width) 把字符串居中,并使用空格填充至长度为width的字符串

在这里插入图片描述

其他内置方法

在这里插入图片描述
在这里插入图片描述

015字符串:格式化

在这里插入图片描述
由于花括号被解释掉,所以不打印后面中文

字符串格式化符号含义

在这里插入图片描述

将ASCII码97对应的字符输出

在这里插入图片描述

格式化字符串
格式化整数

在这里插入图片描述
在这里插入图片描述

格式化操作符辅助命令

在这里插入图片描述
在这里插入图片描述

5表示输出为五位数

Python 的转义字符及其含义

在这里插入图片描述

016 序列!序列!

列表、元组和字符串的共同点
  • 都可以通过索引得到每一个元素
  • 默认索引值总是从0开始
  • 可以通过分片的方法得到一个范围内的元素的集合
  • 有很多共同的操作符(重复操作符、拼接操作符、成员关系操作符)

使用list方法

在这里插入图片描述

元组转换为列表

在这里插入图片描述
注:元组为小括号,列表为中括号

len() 列表长度

在这里插入图片描述

max() 返回序列或者参数集合中的最大值

min() 返回序列或者参数集合中的最小值

在这里插入图片描述

sum(iterable[,start=0]) 返回序列iterable和可选参数start的总和

在这里插入图片描述
在这里插入图片描述

sorted()将元素从小到大重新排列

在这里插入图片描述

reversed()将元素倒序排列

在这里插入图片描述

注:元组是不可以修改和删除的,所以不可以直接对元组使用sorted与reversed命令

enumerate()将每个元素插入枚举

在这里插入图片描述

zip()返回由各个参数的序列组成的元组

在这里插入图片描述

017函数:Python的乐高积木

在这里插入图片描述

定义一个函数和调用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

定义一个有参数的函数并调用

在这里插入图片描述

函数的返回值可以用return返回

在这里插入图片描述
在这里插入图片描述

018 函数:灵活即强大

形参和实参

在这里插入图片描述
在这里插入图片描述

关键字参数

在这里插入图片描述
默认参数(即形参中给定默认值,则在未给实参时会以默认值输出)
在这里插入图片描述收集参数
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值