- 博客(44)
- 收藏
- 关注
原创 C语言函数进阶——函数调用
先把杯子a里面的东西倒到空杯子tmp中,再把杯子b中的东西倒到a杯子中,再把tmp中的东西(现在装着杯子a的水)倒到b中,这样就完成了a和b两个杯子中的液体之间的互相交换。此时回到我们的main函数,我们进行输出操作,这时候输出操作是在main函数中完成的,但是根据上图,main函数中的两个变量没有变化,转化操作只是在Swap函数中完成的。我们把“*”看成一把钥匙,并且a是地址,有地址,有钥匙,我们就可以访问对应房间里面的内容,也就是说此时的*a就是main函数中,变量a的数据。
2025-07-14 17:08:47
919
原创 C语言结构体
为什么:程序是自上而下运行的,如果结构体包含一个本结构体指针成员,当运行到指针的那一行代码时,这个结构体还没有运行完(也就是还没被定义完),计算机此时还不认识这个东西,同理,此时如果我们使用typedef,此时也没有完成typedef的操作,新名字还没命名完,计算机也不认识。在前面的学习中,我们可以很简单的把某一个人的姓名,年龄,身高体重,成绩等信息存储到计算机中,但是如果我们需要存储多个人的各种信息,我们就需要定义很多个变量并赋值,十分的麻烦,这时就需要我们的结构体。②结构体指针访问结构体成员用"->"
2025-07-12 17:58:50
793
原创 C语言指针和数组
int* p;int *p;这两种都是正确的,并且在逻辑上方式一:静态定义数组数组类型 数组名 [元素个数];在C99标准前,定义数组时,元素个数只能是一个常量,不能是变量在C99标准后,定义数组时,元素个数可以是一个变量,但不允许初始化注:我们还可以用define去静态定义数组方式二:动态定义数组(指针类型)malloc(sizeof(数据类型)*元素个数);
2025-07-11 17:46:05
642
原创 C语言条件判断语句和循环语句
先执行表达式1的代码,初始化循环变量,然后把循环变量放到表达式2中,判断是否为真,若为真就执行花括号内循环体的代码,执行完成后去执行表达式3,然后再次执行表达式2,看看是不是真,是真的再去执行花括号内循环体代码,直到表达式2为假,跳出循环。①当表达式1是真时,执行语句1所在代码块内的所有语句,当表达式2是真时,执行语句2所在代码块内的所有语句,若两个表达式都为假,就执行语句3代码块内的所有代码(若存在表达式1和2均为真的情况,则程序指挥执行第一个代码块的内的所有代码。(否则会出现死循环)
2025-07-10 18:27:20
1044
原创 C语言进阶与运算符
在C语言中,我们会使用scanf函数来获取用户的输入,因为我们需要将用户输入的数据存放到指定的变量中,所以我们首先要在输入之前定义好指定的变量,并且我们需要用取地址符(&)来获取变量的地址,便于把数据根据对应的地址进行存放。我们发现,在a/b处,我们已经细心的把输出格式%f,但是,输出是0,这是因为当进行运算的两个数字都是整型时,输出的数字也会默认是整型,这时候如果结果是小数,就会舍去小数部分(他只有自增的操作,并没有使用的操作(比如赋值),此时上面两行代码的含义是一样的。
2025-07-09 18:06:53
779
原创 Python图形界面编程(二)
比如文件对话框,可以打开文件窗口,或者我们可以自定义一个对话框,比如当我们点击登录按钮时,可以弹出一个小窗,让我们输入密码。除了上述这些,一些控件还可以通过command参数和bind函数来操作控件。以上就是Python图形界面编程(二)的全部内容:)对话框可以弹出小窗口和用户进行交互,或者显示信息。
2025-04-25 18:26:42
208
原创 Python图形界面编程(一)
当我们执行Python代码的时候,有时需要进行复杂的操作,比如进行一些输入操作,或者需要看下面的一些输出,这使得我们使用这些代码十分的困难,但是我们可以使用图形界面的程序和一些操作程序结合起来,使抽象的操作图形化,就像Windows一样,简单明了!
2025-04-23 21:32:27
1286
原创 Python面向对象程序设计
默认情况下,一个自定义的a.__eq__(b)方法,功能是判断两者是不是相等默认情况下,一个自定义的对象不能比较其大小,因为那些方法都被Python设置成了None默认情况下虽然不能进行比较大小,但是我们可以通过方法重写来使得我们可以进行大小的比较return self.x == other.x and self.y == other.y #进行了重写else :print(a!
2025-04-21 18:08:07
789
原创 Python网络爬虫设计(三)
在前面我们了解到,requests和pyppeteer各有利弊,requests的速度很快,但是如果面对登录等操作就比较麻烦(需要抓包),pyppeteer虽然可以比较简单的处理这种登录操作,但是他的速度很慢,所以我们就可以将二者结合,实现比较高效的代码。在众多种类的页面中,不同的页面有不同的功能,有的是进行展示的,而有的则是登录类的。,称为cookie,这样浏览器每次发送请求的时候,就会带上cookie,服务器就知道是之前那个登录过的用户的请求了。
2025-04-20 17:33:43
1017
原创 Python网络爬虫设计(二)
不同的tag可能会包含不同的功能,而有的tag里面会包含一些属性,或者一些网站的路径(href,src等),我们可以根据某些特定的tag或者属性,来定位到,查找到我们想要的内容。Python自带的re库中的正则表达式,对于网页内容的提取分析非常方便,而且速度极快,但是适应性较差,可能面对不同的页面,正则表达式就需要修改。当我们随机打开一个页面,右键页面空白处,然后点击检查,我们就可以看到一个网页的源码,而在源码中,我们会发现源码中包含很多的尖括号,即“,即一个tag里面包含另一个tag。
2025-04-17 21:21:28
1682
1
原创 Python网络爬虫设计(一)
(2)在浏览器中搜索这个网址,查看网页的源代码,在源代码中找出我们想要的内容的字符串的模式(比如我们想要查找一些图片,在网页源码中,图片都有一些固定的关键字,我们通过抓取这些关键字,就可以获取图片)可以发现,在这个URL中,有一部分是“q = 乐高”,我们就可以猜想,是不是只要把q后面的文字改成我们想要搜索的关键字,就可以到达对应的页面?,可能一个有一点反爬虫手段的网页就能把这个代码屏蔽掉(比如我们用上面的代码去爬百度的搜索图片,是不能成功的,会被反爬),而且。
2025-04-15 19:35:06
1434
原创 matplotlib数据展示
在前面的学习中,我们能够使用一些库进行数据的整合,收集,整理等,而在进行了这些操作之后,我们需要把这些整合好的数据进行更加直观的展示,比如用一些统计图来实现,而matplotlib就可以完成这个工作。matplotlib是一个第三方库,需要使用pip命令去下载。
2025-04-12 23:21:00
618
原创 Python数据分析及相关库(二)
csv文件是一种常见的文本格式,用于存储表格数据,是一个以.csv为后缀的文件,它广泛应用于数据交换、存储和处理场景,尤其是在需要轻量级和通用性的情况下。pandas功能强大,我们可以用它来读取一个Excel文档,在读取的时候,对于pandas,每一张工作表就是一个DataFrame。注:之前在csv文件中把空格设置为NA,这个只在csv中有效,输出时还是NaN。这种方法在旧版本的pandas库上是可行的,如果在新的库中输入这个,会报错。新的with...as语句可以自动保存,更加便利!
2025-04-10 21:51:51
517
原创 Python与图像处理
在众多的Python的第三方的库中,Pillow库是一个强大且方便的库,它能够处理图像,比如批量的对一些图片进行处理,或者增加一些滤镜,剪裁等等。
2025-03-31 16:51:58
1315
2
原创 Python正则表达式(二)
在正则表达式中,若正则表达式中有多个分组,则re.findall()函数会返回一个包含多个元组的列表,每一个元组里面就是各个符合要求的子串中的分组的集合,顺序是一号分组,二号分组……在上面的例子中,其实aab也可以有匹配的,但是它前面有aa这个正则表达式,所以当我们能匹配到aa的时候,aab就不会再被考虑了,除非aa无法匹配成功,才会考虑aab。在这个例子中,我们想分别的输出两个HTML中的两个p元素,但是量词+是贪婪的,它会尽可能的匹配长的字符串,所以为了更长,他就把开头和结尾的那两个当作了匹配条件。
2025-03-27 20:32:55
773
原创 Python正则表达式(一)
在Python的正则表达式中,我们可以用它来判断某个字符串是否符合某种模式,比如判断某个字符串是不是邮箱地址,是不是电话号码等,我们可以利用正则表达式在文本中寻找并抽取符合某种模式或格式。
2025-03-25 21:23:29
1629
原创 Python与数据库
在Python中,我们通常会用列表,字典,元组等数据类型来存储一些数据,但是当我们有大量的数据时,使用这些数据类型会比较麻烦,比如要进行写入,修改,查找等操作时,我们要进行大量的数据编辑,这时我们可以把Python结合数据库来使用,下面我们会介绍其内容。
2025-03-23 17:49:40
1327
原创 Python与命令行参数
在前面的学习中,我们都是在PyCharm中运行的,但是如果我们有一个用Python写的实用工具,使用的次数很频繁,那么如果每次使用都要打开PyCharm,再把工具文件调到PyCharm中,再运行,显然不方便,所以我们有时需要用命令行的方式(命令脚本方式)来运行Python程序。
2025-03-20 20:15:12
1103
原创 Python组合数据类型(三)
在“a in b ”中,如果b是列表,字符串,元组,则时间复杂度是O(n),也就是说处理时间和元素b的个数是成正比的,但是若b是字典或集合,则时间复杂度是O(1),即时间基本是常数,和b无关,所以。:在Python的3.5版本及以前,字典的输出是无需的,也就是说你输出的顺序是12345,但输出的顺序可能是52341(不确定的),但是在3.6及以后的版本,输出的顺序和输入的顺序是相同的)我们可以用包含元组的列表,再结合dict()函数,把列表中的元组转化为一个字典(元组中需要包含两个数值,一个是键一个是值)
2025-03-14 19:21:17
793
原创 Python组合数据类型(二)
我们在Python中可以用key函数来自定义如何去比较,从而不仅仅局限于从大到小或从小到大:例子:print(a)输出:我们会通过key来调取对应的函数的返回值,再把其返回值根据大小排序!像前面所说,一个列表内部的元素可能包含很多的信息,那么我们怎么来根据我们的需要来排序呢:我们先要介绍一个表达式,即lambda函数表达式:#表示一个函数,参数是x,返回值是x[2]#k是一个函数,参数是x,y,返回值是x+y#按年龄排序#按成绩排序#按姓名排序。
2025-03-11 20:13:29
1009
原创 Python组合数据指针
因为python中一个元组当我们创建完成后,它内部的元素数量就是固定的,而里面每个元素不是变量(因为元组的元素不允许被改变)而它内部的每个元素就像一个个容器,把别的数值放到里面,我们虽然改变不了元组里面每个元素的数值,但是可能改变元组里面每个元素所引用的对象的内容(比如引用了一个列表)。元组里的元素并非变量,图片中的a指向[1,2,3]的那两个黑色箭头严格来说是对[1,2,3]这个列表的。我们发现,我们把指针指向的位置的内容改变了,所以最后输出,全部的2。嗯,为什么会是这个结果呢?嘿嘿,正确答案是B!
2025-03-08 16:49:11
160
原创 Python递归进阶——科赫雪花
没想仅仅到五阶就这么复杂,但是身为一个追求完美的人,上面这个代码还不够完美,毕竟它只是绘制出了一条边,我们要的可是一整个完美的雪花!(1)在Python中我们会用递归函数来解决问题,我们需要先找到终止条件,也就是上面提到的,当阶数是0时,是一条直线。科赫雪花是一种经典的几何图形,它是通过递归的方式生成的,而我们现在就用Python的递归函数来绘制一个科赫雪花!这样依次类推,我们的阶数越大,就会得到一个更加复杂的边,再把这样的边进行组合,就得到了一个漂亮的“雪花”模块,是一个用来绘图的模块。
2025-03-04 20:02:18
817
原创 Python的函数和递归
在Python中,我们会用def关键字来定义一个函数,具体格式如下:def 函数名 (参数1, 参数2 ......)语句组(也就是函数体)(当然也可以没有参数):def 函数名 ()语句组(也就是函数体)
2025-03-03 21:58:59
785
原创 Python循环语句
我们会发现,当for语句遍历到“9”的时候,激活了下方的break语句,使得下面的那个print(b[i],"不是数字9")没有执行,并且跳出了循环,执行的循环外面的print("程序结束!语句组1在执行过程中发生了错误,出现了异常,程序会立即从<语句组1> 中跳出去,执行<语句组2>,再接着往下执行,如果<语句组1>中没有出现错误,就不会执行<语句组2>而再while循环中,我们的循环范围一般是不确定且动态的,比如上面的求最小公倍数,我们不知道具体的范围,如果太大还会造成资源的浪费。
2025-03-02 17:01:29
931
原创 Python的算数运算、逻辑运算和分支语句
(注:这里需要注意一下,①首先就是虽然在这个例子中,我们输入10后都得到了相同的字符串,但是其原理还是有一点不一样的,第一个是因为我们输入了和if语句后面的条件语句相符合的数值,执行了下面所有的语句,而第二个是在执行了输出very后,“跳出”了if语句,然后执行了和他同级的一个输出语句。来结尾,而冒号后面的语句则是语句组,编辑器在执行if语句时,会先看看每一部分的逻辑表达式是否有满足条件的,如果遇到满足条件的,就执行对应的语句组,后面的就停止执行。
2025-02-23 16:29:41
880
原创 Python入门
Python是一种高级的、解释型、通用编程语言,以其简洁的、易读的语法和强大的功能而广受欢迎,Python相对于其他的编程语言更为简便,且简单易学,所以是初学编程者的首选。
2025-02-21 23:06:08
1027
原创 CSS基础
CSS(层叠样式表),是给Web内容添加样式的代码,它可以为我们的HTML添加不同的样式,下面我们会简单介绍一些CSS基础。CSS是一门样式表语言,可以选择性的为HTML添加样式,为网页添加样式,布局等。
2024-11-07 21:18:04
897
原创 HTML弹性盒子模型
之前我们提到过,当我们创建一个元素时,相当于在HTML中创造了一个盒子,并且可以用适当的方法改变他的位置和其他属性,今天我们将会介绍一种更为便捷,有效的布局方式。前面我们提到的传统的布局方式是通过HTML元素+CSS样式来实现布局的,但是在实现某些特定的布局时比较困难麻烦,于是诞生了一个全新的布局方案——Flex布局。
2024-11-06 21:31:53
1309
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人