- 博客(55)
- 收藏
- 关注
原创 《手把手陪您学Python》53——数组的展开
在上一篇《手把手陪您学Python》52——数组的变形中,我们学习了数组变形的方法,并重点理解了如何进行按行以及按列的取值,这些都会在我们今天以及后面要学习的内容中加以体现。今天我们将要学习的是数组的展开方法。所谓数组的展开,就是将数组从二维、三维甚至更高维度,转变成一维的过程,就如同《三体》中质子的“低维展开”一般。在展开的过程中,就会涉及到我们上一篇学习的按行展开以及按列展开的顺序问题。下面我们就来学习三种数组展开的方法。1、flat在入门阶段,我们学习过多种迭代器,比如常见的字符串
2021-05-24 10:20:19 1698
原创 《手把手陪您学Python》52——数组的变形
在上一篇《手把手陪您学Python》51——数组的生成方法2中,我们学习了几种新的生成数组的方法,也基本上掌握了NumPy中常用的生成数组的方法。接下来的几篇,我们将会在之前学习的数组生成方法和属性的基础上,学习几种操作数组变形、展开、翻转、拼接、拆分,以及对数组元素进行新增和删除的方法。今天,我们先来学习一下数组的变形。1、reshape函数数组变形的方法非常简单,使用的就是我们已经熟悉的reshape。但与之前学习的reshape有所不同,今天将要学习的reshape不是一种方法,更
2021-05-20 09:02:57 373
原创 《手把手陪您学Python》51——数组的生成方法2
在上一篇《手把手陪您学Python》50——数组的dtype属性中,我们学习了数组的数据类型及其转换方法。今天,我们将会利用之前学习的数组属性的相关知识,学习其他生成数组的方式。1、reshapearray和arange是我们在《手把手陪您学Python》48——数组的生成方法1中学习的数组的生成方法。虽然这两种方法都可以将指定序列转换为数组,但在转换的过程中,array是根据列表的长度以及嵌套层级来生成某一形状的数组,arange又只能生成一维的数组。如果我们想根据需要,生成指定形状的
2021-05-20 08:56:46 444
原创 《手把手陪您学Python》50——数组的dtype属性
在上一篇《手把手陪您学Python》49——数组的shape属性中,我们对数组的“形状”及其表示方式有了更为深入的了解。今天,我们将会继续学习数组的属性,但不是与数组“形状”有关的属性了,而是与数组数据类型有关的dtype属性。1、数据类型对于“数据类型”这个字眼我们并不陌生,它指的就是数据的大类或者说Python的对象。在入门阶段,我们学习的数字、字符串、布尔值、列表、元组、集合、字典,以及我们刚刚学习的数组,都是不同的数字类型。其中,数字还可以分为整型、浮点型,甚至可以根据数位和精度
2021-04-26 15:27:59 3825 4
原创 《手把手陪您学Python》49——数组的shape属性
在上一篇《手把手陪您学Python》48——数组的生成方法1中,我们学习了array()、arange()以及linspace()三种生成数组的方法,并且了解了数组是使用嵌套列表的方式进行表示的。今天,我们将会学习数组的shape属性,并更深入地了解数组特别是多维数组的表示方式。1、shape属性数组的shape属性就如同它的名字一样,反映的是数组的“形状”。对于一维数组,反映的是一个维度上的元素数量,类似“长度”;对于二维数组,反映的是两个维度上分别的元素数量,类似“长度”和“宽度”;
2021-04-19 11:20:08 5860 1
原创 《手把手陪您学Python》48——数组的生成方法1
在上一篇《手把手陪您学Python》47——ndarray中,我们学习了NumPy的ndarray,并通过对比Excel,了解了多维数组以及ndarray在处理多维数组方面的优势。今天,我们将介绍ndarray的生成方法。1、array()函数生成ndarray最简单的方法就是使用array()函数,通过接收列表、字典、元组、集合等我们在入门阶段学习的序列型对象,生成数组。还可以通过接收其他的数组,生成一个新数组。array函数就像我们之前学习的int()、str()、list()、tupl
2021-04-13 09:27:22 340
原创 《手把手陪您学Python》47——ndarray
在上一篇《手把手陪您学Python》46——NumPy介绍中,我们了解了NumPy的开发历史和以数组计算为核心的主要特点。今天,我们将对NumPy的数组对象——ndarray进行具体的介绍,这不仅仅是NumPy的基础,更是我们今后学习和使用Python进行数据分析的基石以及重中之重。1、理解多维数组数组是一系列有序的元素的集合。对于低维数组,我们很容易理解。在入门阶段,我们学习过列表、词典、元组、集合等Python数据结构,无论从形式上还是实质上,我们看到的这些对象都只有一行数据,或者说都只有一
2021-04-06 08:43:58 262 1
原创 《手把手陪您学Python》46——NumPy介绍
在上一篇《手把手陪您学Python》45——Python入门完结篇中,我们对入门阶段所学的内容进行了回顾和梳理,同时结束了Python基础知识的学习,实现了从Python小白到具有基础编程能力的蜕变。由于接下来的Python学习有很多的方向,比如数据分析、人工智能、网络爬虫甚至游戏设计等等,我们不可能同时对所有方向进行学习和介绍,所以,我们暂时选择“数据分析”作为我们《手把手陪您学Python》系列方向后续的编写方向,并与大家一起学习NumPy、Pandas、Matplotlib等重要的数据分析工具。
2021-03-31 17:24:43 242
原创 《手把手陪您学Python》45——Python入门完结篇
在上一篇《手把手陪您学Python》44——类的导入中,我们学习了导入类的几种方法,同时也结束了面向对象编程的介绍。至此,我们已经完成了Python入门阶段全部内容的学习。在这里,要感谢一起陪伴我们共同学习Python的朋友们,祝贺大家从Python小白成为了掌握Python基础知识的真正的开发者,也具有了继续学习Python和应用Python的能力。接下来,我们就要根据自己的需要和兴趣领域,在数据分析、爬虫、人工智能、机器学习等Python应用领域中选择适合自己的发展方向,应用Python强大
2021-03-22 08:32:36 555
原创 《手把手陪您学Python》44——类的导入
在上一篇《手把手陪您学Python》43——类的继承中,我们学习了父类和子类的继承关系,同时再一次见证了__init__()方法的神奇之处。今天,我们将介绍面向对象编程最后一部分的内容,也就是类的导入。敬请关注。感谢阅读本文!如有任何问题,欢迎留言,一起交流讨论^_^要阅读《手把手陪您学Python》系列文章的其他篇目,请关注公众号点击菜单选择,或点击下方链接直达。《手把手陪您学Python》1——为什么要学Python?《手把手陪您学Pyth...
2021-03-15 08:41:01 474
原创 《手把手陪您学Python》43——类的继承
在上一篇《手把手陪您学Python》42——类的魔法方法中,我们学习了如何通过实例方法去定义实例属性,并且对__init__()方法的应用进行了介绍。今天,我们将会继续深入学习面向对象编程,介绍类的继承和魔法方法在其中的应用。我们之前学习的类的实例化,是指将类具体到某一特定的事物的过程,这个事物就是类的实例,他具有类的全部属性和方法。类的继承实际上也具有原来类的全部属性和方法,只不过他不是从原来类具体化成的某一特定事物,而是在原来类的基础上派生出来的新的类。他既具有原来类的全部属性和方法,同时
2021-03-05 08:45:53 126
原创 《手把手陪您学Python》42——类的魔法方法
在上一篇《手把手陪您学Python》41——类方法与实例方法中,我们引入了类方法的概念,并介绍了类方法与实例方法在语法规则和引用方面的差异。今天,我们将会继续介绍实例方法的应用,并介绍一种非常重要而又特殊的实例方法。1、通过实例方法定义实例属性在《手把手陪您学Python》40——类的定义、属性与实例化中,我们曾介绍过实例属性,是指通过给实例变量赋值,定义的只属于实例的而不属于类的属性。今天我们将会介绍一种新的定义实例属性的方法,就是通过实例方法来定义实例属性。由于方法本身就比属性能够做更多的“
2021-02-18 11:18:19 158
原创 《手把手陪您学Python》41——类方法与实例方法
在上一篇《手把手陪您学Python》40——类的定义、属性与实例化中,我们学习了面向对象编程的基础知识,了解了类的属性以及实例化属性等,今天我们将会主要介绍类的方法以及实例方法。1、类的方法:类的方法其实也可以认为是类具有的某种特征,与类的属性不同的是,这种特征除了可以用变量进行描述以外,还可以做更多的“事情”,而这些事情是通过定义函数的方式来实现的。也就是说,如果类的属性是可以通过实例访问的变量,那么类的方法就是可以通过实例访问的函数。类中的函数就称为方法,我们之前学习的有关函数的一切都适
2021-02-08 09:51:20 191
原创 《手把手陪您学Python》40——类的定义、属性与实例化
在上一篇《手把手陪您学Python》39——面向对象中,我们介绍了面向对象编程、面向过程编程的概念,并用比较通俗的语言着重分析了两种编程思想之间的区别。今天,我们将会对面向对象编程进行正式的讲解。为了让大家更加直观地理解面向对象编程的规则和用法,我们将使用经典游戏《超级玛丽》作为实例,贯穿整个讲解过程,并将“马里奥Mario”作为面向对象编程中的“对象”加以应用。1、定义类Python中的“类”与我们现实生活中“类”的概念很相似,是对具有相同或者相似特征的事物的总称。在生物中,花鸟鱼虫各
2021-02-01 19:53:20 432
原创 《手把手陪您学Python》39——面向对象
在上一篇《手把手陪您学Python》38——第二阶段小结中,我们对之前所学的内容进行了总结,接下来,我们将会用几篇文章,为大家介绍一种Python中非常重要的编程方法,或者说编程思想。为什么说是编程思想呢,因为他并不涉及新的语法、命令、函数等,只是在之前我们学习过的知识的基础上,通过改变程序的结构、运行逻辑、执行顺序,甚至是改变程序的核心主题,来实现一种全新的思维方式和编程逻辑,也就是面向对象编程。上面这段话可能不是很好理解,甚至可能不是很准确,因为他只是我对于这种全新的编程思想的描述。说实话,
2021-01-25 10:54:25 190
原创 《手把手陪您学Python》38——第二阶段小结
在上一篇《手把手陪您学Python》37——程序的重构中,我们对之前所学的内容进行了应用,同时体验了程序重构的过程。至此,我们已经基本掌握了Python的基础语法知识,数据结构和语言逻辑,为我们日后继续学习和使用Python奠定了基础。在这一篇中,我们将对这一阶段所学的18篇文章的内容进行个小结,方便大家了解其知识框架,掌握其中的重点内容。1、数据结构在这一阶段的开始,我们学习了列表、元组、字典、集合等四种数据结构,同时与第一阶段学习的字符串和数字,共同构成了Python世界中最为基础的数字
2021-01-18 22:58:40 134
原创 《手把手陪您学Python》37——程序的重构
在上一篇《手把手陪您学Python》36——错误和异常处理中,我们学习了错误和异常的处理方法,使我们在面对各种不确定的情况时,都能够优雅地面对,而让用户感觉不出来在我们的程序中出现了异常。错误和异常处理是比较独立的一块内容,同时也是我们之前所介绍的Python基础编程知识的一个补充。至此,我们已经完成了Python基础编程知识的介绍,剩下的就是我们如何在此之上去进一步学习和应用了。今天,就将之前学习的文件操作以及异常处理的方法做一个应用和复习,我们会用一个相对真实的实例,模拟数据存储和读取的应用
2021-01-12 12:29:51 228 1
原创 《手把手陪您学Python》36——错误和异常处理
在上一篇《手把手陪您学Python》35——数据的存储中,我们学习了存储JSON数据和读取的方法。今天,我们将会介绍一块比较独立的内容,也就是错误和异常处理。在我们运行程序,特别是面对用户运行程序时,能够优雅地处理错误和异常情况,这是非常重要的事情。但可能有人会问了,既然程序都已经面向用户了,为什么还会有错误呢,各种错误和异常情况,都应该在程序开发至少是测试时就应该已经解决了啊?大家说的没错,我们的确需要在开发和测试环节处理好程序中的错误,但这个“错误”和我们今天将要介绍的“错误和异常情况”并不
2021-01-08 08:55:01 291 1
原创 《手把手陪您学Python》35——数据的存储
在上一篇《手把手陪您学Python》34——文件的写入中,我们学习了两种文件写入的方法,同时,演示了不同文件打开模式对于读写操作的区别。今天将要学习的数据的存储其实也是一种文件的写入,只不过之前写入的主要是字符串,而今天我们会使用一种特定的数据格式进行文件的存储和读取,这种格式就是——JSON。1、JSONJSON(JavaScript Object Notation)是一种轻量级的数据交换格式,具有简洁和清晰的层级结构,既方便人们的阅读和编写,也易于机器的解析和生成,能够有效提升网络传输效率。
2020-12-31 08:50:59 263
原创 《手把手陪您学Python》34——文件的写入
在上一篇《手把手陪您学Python》33——文件的关闭中,我们学习了关闭文件的两种方法。今天,我们将学习文件的写入。如同学习文件的读取,是为了让我们了解Python读取文件的原理一样,本篇的内容也是为了让大家理解Python写入文件的基础原理。文件写入的方法有write()和writelines()两种,但无论哪种写入方法,都要先用open()打开文件。当然,这次打开文件就不能使用默认的只读模式“r”了,而要从我们上一篇列出的文件模式列表中,选择可以写入文件的模式。所以,这一篇中还会介绍一下不同
2020-12-31 08:43:15 289
原创 《手把手陪您学Python》33——文件的关闭
在上一篇《手把手陪您学Python》32——文件的读取中,我们学习了读取文件的几种方法。这一篇中,我们将学习关闭文件的方法。当我们使用open()打开并使用文件后,显式地关闭文件是非常重要而必要的一件事。如果不能很好地处理文件的关闭,可能会导致数据丢失或者受损。其实在我们上一篇文章读取文件之后,就应该使用close()方法将文件关闭,但由于当时还没有涉及这部分内容,就没有进行文件关闭的操作,其实是一种不规范的做法。关闭文件的方法有两种。1、使用close()手动关闭文件当我们对打开的文件
2020-12-24 22:58:47 244
原创 《手把手陪您学Python》32——文件的读取
在上一篇《手把手陪您学Python》31——文件的打开中,我们学习了文件打开的方法。今天我们继续学习文件的操作,会重点讲解几种文件读取的方法。这里先多说一句。当我们以后学习了更高级的文件操作方法后,我们可能更多地会使用pandsa.read_csv这类读取文件的命令。但是,理解python处理文件的基础原理也是很重要的,也就是这篇文章要介绍的内容。Python中有多种读取文件的方式,下面我们逐个介绍。1、读取整个文件在上一篇中我们看到,open()函数返回的只是一个迭代器,这时我们就需要re
2020-12-24 22:52:27 533
原创 《手把手陪您学Python》31——文件的打开
在上一篇《手把手陪您学Python》30——模块中,我们学习了通过导入模块调用其他文件中的函数的方法,这也是我们第一次实现了跨程序或者说跨文件的操作。接下来,我们将要进一步学习如何通过Python去操作其他文件,包括打开文件、读取文件、关闭文件、写入文件和存储文件等等。Python处理文件非常简单,这也是Python在文本和文件处理领域非常流行的原因。为了便于今天以及后面几篇内容的讲解和演示,我们要自己先制作一个文本文件,作为贯穿我们后面几篇文章的示例文件。文本文件的内容大家可以随意制作,我这里就用
2020-12-16 21:54:51 217
原创 《手把手陪您学Python》30——模块
在上一篇《手把手陪您学Python》29——匿名函数中,我们介绍了匿名函数的格式和用法。使用函数的优点之一是可以将自定义函数的代码块与主程序分离,使整个代码结构更清晰,可读性更高。同时,自定义函数的使用,还能够实现代码段的复用,避免实现同一作用的代码段在整个程序中多次重复出现。但我们之前学习的函数都是在一个程序或者文件中体现的,虽然可以复用,但也仅仅只能在这一个程序或者文件中复用。如果想在多个程序或者文件中复用同一个函数,在我们目前介绍的方法中是无法实现的。今天我们就介绍一种方法,可以将函数存储
2020-12-12 16:33:44 250
原创 《手把手陪您学Python》29——匿名函数
在前几篇中,我们完整介绍了Python自定义函数的特性、参数和返回值,大家可以通过点击下方的链接进行了解。《手把手陪您学Python》26——自定义函数《手把手陪您学Python》27——自定义函数的参数《手把手陪您学Python》28——自定义函数的返回值虽然自定义函数很强大,但还不是Python的全部。今天,我们将要学习一种新的函数,叫做匿名函数。匿名函数本质上也可以看做是一种自定义函数,只不过是以匿名的方式来展示。1、匿名函数的定义我们知道,每一个自定义函数都是有函数名的,
2020-12-05 13:08:26 323
原创 《手把手陪您学Python》28——自定义函数的返回值
在上一篇《手把手陪您学Python》27——自定义函数的参数中,我们学习了自定义函数参数的几种类型。在本篇中,我们将学习自定义函数的返回值,并介绍返回值的应用。我们已经知道,自定义函数是一个以关键字def开头、关键字return结尾的代码块。其中的return就是返回返回值的关键字。在前两篇文章中,虽然没有重点讲解,但其实在实例中已经列举了几个使用return返回值的情况,比如返回投骰子的结果,返回胜利者的名字,返回求和或者面积计算的结果等等。但我们也发现,并不是每一个自定义函数都有返回值的,比
2020-12-05 12:59:02 13198
原创 《Python实战》2——无法从命令行启动Jupyter Notebook
问题详细描述:安装Anaconda后,无法通过命令行方式启动Jupter Notebook,命令行显示:'jupter'不是内部或外部命令,也不是可运行的程序或批处理文件。相关问题描述:无法通过命令行启动Jupyter Note或者Jupyter Lab。关键词:命令行、Jupyter Notebook、Jupyter Lab、环境变量解决方案:在《手把手陪您学Python》5——Jupyter Notebook一文中,我们介绍了Jupyter Notebook的安装和使用方
2020-12-05 12:50:44 1280
原创 《手把手陪您学Python》27——自定义函数的参数
在上一篇《手把手陪您学Python》26——自定义函数中,我们学习了Python自定义函数的作用,以及自定义函数的语法格式。在本篇中,我们将对自定义函数的参数进行讲解。自定义函数的参数与我们之前学习的内置函数的参数没有什么区别,都是在函数名后面括号中的部分,并且有的函数的参数可以为空,有的函数的参数可以是一个或者多个。比如,我们上一篇投骰子中自定义的两个函数play()和win(A, B)...
2020-04-20 17:48:05 1145 1
原创 《手把手陪您学Python》26——自定义函数
在上一篇《手把手陪您学Python》25——列表推导式中,我们学习了推导式的相关概念和使用方法,使用推导式的方法,可以减少代码的输入量、提高可读性,是Python中非常受欢迎的一种形式。今天开始,我们将要学习的是Python中最重要、最基础的一种代码组织和代码复用形式——函数。这里的函数既包括我们之前学习的、在Python中已经定义好的函数,或者说叫做内置函数,也包括我们自己定义的、实现我...
2020-01-08 17:45:23 610
原创 《手把手陪您学Python》25——列表推导式
经过前几篇文章的学习,我们基本上掌握了Python中最为基础的几种数据类型,包括列表、元组、字典和集合,大家可以通过点击下方链接进行学习。《手把手陪您学Python》20——列表《手把手陪您学Python》21——元组《手把手陪您学Python》22——字典《手把手陪您学Python》24——集合今天,我们将要学习的是一种叫做推导式的方法,它允许我们过滤一个容器的元素,用一种简...
2020-01-08 17:45:05 1216
原创 《手把手陪您学Python》24——集合
在上一篇《手把手陪您学Python》23——内置序列函数中,我们学习了4种Python中内置的序列函数,同时学习了利用序列函数构建字典的方法。在这一篇中,我们将学习这一阶段中最后一种数据结构——集合。集合的概念我们并不陌生,在大学数学以及高中,都涉及到了一点集合的知识,像我们知道的交集、并集等,都是针对集合进行的操作。今天,我们会对Python中集合的概念以及相关的操作方法给大家进行系统地...
2020-01-08 17:44:10 259
原创 《手把手陪您学Python》23——内置序列函数
在上一篇《手把手陪您学Python》22——字典中,我们学习了字典的基本概念,增删改查的方法,以及字典的函数和几个比较重要的方法。在这一篇中,我们会先介绍几个Python中内置的序列函数,之后介绍几个字典的实例,以便大家更好地掌握字典的特性以及在编程中的应用方法。1、sorted()函数sorted()函数的作用是将任意序列中的元素进行正序排序,并新建一个已排序的列表进行输出。函数的参数是...
2019-10-28 15:50:32 942
原创 《手把手陪您学Python》22——字典
在上一篇《手把手陪您学Python》21——元组中,我们学习了元组的定义、操作方法以及元组“拆包”的方法和应用。今天,将要给大家介绍的数据结构是字典。如果说以前我们学习的列表、元组都是一维的数据序列,那么字典的数据结构包括其展现形式就是二维的,因为字典的每一个元素都是由键和值组成的键值对,因此形成了两个维度,由此也极大地扩展了Python的应用场景和我们编程的自由度。1、字典的定义字典...
2019-10-17 15:21:11 432 1
原创 《手把手陪您学Python》21——元组
在《手把手陪您学Python》20——列表中,我们学习了列表的定义以及列表的各种操作方法。今天我们要学习的元组,可以被看做是不能修改的列表。所谓不能修改,就是不能像列表一样进行增删改的操作,而查的切片和索引方式,以及一些函数和方法与列表还是非常类似的,所以今天的内容比较容易理解,大家加油。1、元组的定义元组也是Python中一种常用的数据结构,它是用小括号括起来的一组数据序列。和列表一样,...
2019-09-16 17:34:20 214
原创 《手把手陪您学Python》20——列表
在上一篇《手把手陪您学Python》19——第一阶段小结中,我们对前一阶段学习的内容进行了一次总结,并通过编写一个较为复杂的程序进行了应用。同时,还给大家留了一个思考题,就是作为游戏的“设计者”,如何才能够一次猜对呢?其实,只要让我们在程序运行的过程中,看到电脑产生的四位数字就可以。而方法呢,就是在电脑生成数字后,将这个数字“打印”出来就可以了。作为程序的设计者,是不是很有自豪感呢?所以我们可...
2019-08-22 17:50:16 453
原创 《Python实战》1——从列表中随机选取指定个数的不重复元素
问题详细描述:从列表、字符串、元组等集合中,随机选取指定个数的不重复元素。相关问题描述:随机选取指定多个元素、在指定范围内随机生成指定多个不重复数字、随机选取一个元素、随机选取随机个不重复元素。关键词:列表、随机、不重复、指定个数、random、sample、choice解决方案:1、使用random.sample()函数随机选取多个不重复元素random.sam...
2019-08-08 11:18:26 23108 1
原创 《手把手陪您学Python》19——第一阶段小结
在上一篇《手把手陪您学Python》18——循环语句for中,我们学习了最后一种控制流语句,同时也结束了一个阶段的学习任务。在这一篇中,我们将对之前18篇文章的内容进行个小结,方便大家了解其知识框架,掌握其中的重点内容。最后会再用一个较为复杂的实例,将我们之前学习的内容加以运用和实践。1、Python的介绍在第一篇文章中,我们通过Python的几个优势和特性,向大家介绍了Python这...
2019-08-08 11:13:00 172
原创 《手把手陪您学Python》18——循环语句for
在上一篇《手把手陪您学Python》17——循环的终止中,我们学习了break和continue两种循环终止的方法,同时利用循环的终止方法,对我们的游戏程序进行了优化。今天,我们将要学习的是另外一种循环语句——for循环。for循环重要到什么程度呢?就这么说吧,可能没有一个程序不需要用到for循环的。所以,大家加把劲,把for循环学好,我们的技能就能再上一个台阶了。先来了解一下for循环的...
2019-08-08 11:09:34 362
原创 《手把手陪您学Python》17——循环的终止
在上一篇《手把手陪您学Python》16——循环语句while中,我们学习了while循环的使用方法,并应用while循环,实现了“石头剪刀布”游戏的循环运行。虽然这个版本已经比第一个版本方便了很多,但还是缺少点游戏的感觉,如果要能实现我们平时所说的“三局两胜”或者“五局三胜”就好了。那么,今天我们就学习一种新的方法,看看利用这种方法,能否实现多局定胜负的功能。今天,我们要学习方法叫做循环...
2019-08-08 11:03:52 322
原创 《手把手陪您学Python》16——循环语句while
在上一篇《手把手陪您学Python》15——判断语句if中,我们学习了if语句的各种结构和知识点。同时,运用if语句和之前学习的知识,编写了我们真正意义上的第一个Python程序——“石头剪刀布”游戏。但在这个游戏中,还有不少需要改进的地方。今天,我们就在介绍循环语句while后,继续完善这个游戏。while语句的结构与if...else...非常类似,只不过是将关键词if改成了while。最...
2019-08-08 10:49:50 483
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人