Python语言基础 本篇主要学习Python的基本数据类型(整型、浮点型、复数型、字符串类型)和常用模块和内置函数(math、cmath、random)。 基本数据类型Python内置的数据类型包括数值型、字符串型、布尔型等基本(简单)数据类型以及列表、元组、字典、集合等复杂数据类型。现在关注基本数据类型,复杂数据类型后面一一学习。 整型 Python 2.x中的整型包括int和long两种,长整型无需考虑溢出的问题。到了3.x,统一采用了长整型。 Python 3.x中整型数据的大小可以是任意大,无需考虑溢出。它的原理是将整型的数值用int数组来存储,当要溢出的时候就增加数组的空间。正是因为不用考虑数值的溢出,使用Python对大数据进行计算是很方便的。 整型可以表示为十进制、二进制、八进制和十六进制: 十进制:默认使用 二进制:前面加上0b或0B 八进制:前面加上0o或0O 十六进制:前面加上0x或0X 浮点型浮点型表示的是一个实数,它有小数形式和指数形式两种表示方式: 小数形式 包括整数和小数部分,用小数点分隔。如果小数点后面没有数,那么默认小数部分为0,如34. ...
前言我一直用着iPhone和iPad。但在我眼中,iOS是一个很不自由的系统,主要原因有几点: 应用必须从app store下载。 想要下载的软件在国区的商店没有,需要使用其他区的账号。 iOS会给应用分配一个空间,应用只能访问这块空间中的内容。如果尝试访问外面就会出现permission denied。 可操作性不够。如果不越狱那么能diy的方面很少。 会iOS编程的除外。 这个偶然看到的软件直接刷新了我对iPad的认知:Code。有了它,即使不会iOS编程也可以干很多事。 探索进入这个软件后,首先看到的就是熟悉的界面: 在设置里面可以看到,软件内置了Python、Node、Clang等解释器和编译器。 不妨在软件自带的终端验证一下,相应的环境果然是存在的。 那么,接下来尝试以平时的方式运行一下Python代码。嗯,与平时无异。 当我觉得把这个软件当作做算法题的编辑器,顺便运行一下代码就行的时候,接下来这个命令的结果直接让我虎躯一震。 这个软件内的Python竟然也可以使用第三方模块!那么可玩性突然就高起来了。 flask首先试试flask,看看可不可 ...
之前在js动态解析引入高清B站视频中研究了B站的api,但是都是别人封装好的,使用方便但限制比较大。这次正好学了Python爬虫,又简单学习了多线程的使用,所以就去研究了bilibili的官方api,然后尝试封装了bilibili视频下载的类(造轮子)。 requirements需要引入如下模块:(按需使用pip下载) 123456import re # python自带的正则表达式库import requests # http请求库,可能需要下载import json # api返回的是json,需要转换为dictfrom contextlib import closing # 创建上下文管理器 from multiprocessing.pool import Pool # 自带的多进程库from tqdm import tqdm # 进度条库,需要下载 类的设计 类属性包括一些类中始终不变的变量,如请求头、cookie等。 一个类的实例对应一个视频或一个合集。 实例属性和视频相关,如视频的bvid、标题、直链等。 实例化对象时传入bilibili视频的url。 包含单个 ...
认识Shell之前我们一直在说shell,也一直在使用shell。那么shell到底是什么? 实际上,shell自身也是一个应用程序,它负责用户与操作系统之间的通信。当用户登录到shell时,系统会将一个shell程序调入内存——每个用户都有一个默认的shell,记录在/etc/passwd文件(口令文件)中。 如我(root用户)现在默认的shell为zsh,那么/etc/passwd中的记录就为: 有些特殊用户的记录可以不是shell程序,如上图中的第二个。 zsh是mac os自带的一个shell,以高度定制化和有众多的主题闻名,Linux需要安装。 用户登录、shell执行和用户退出的过程如下: 用户登录:init进程fork/exec一个login程序,输入用户名和密码。如果验证成功,则按照口令文件为用户fork/exec默认的shell程序。 shell执行:shell内置了解释器如sh,它可以解释用户输入的正确的命令。如果命令为shell内置命令,那么直接由shell完成即可;如果命令为可执行程序,那么fork/exec一个新的进程来执行该程序;如果命令为脚本文本 ...
前言这篇文章将研究两个很有趣的内容:Vim编辑器与正则表达式。 「如何退出Vim编辑器?」应该是每个初学者都会遇到的问题,也是各大论坛上经常被问到,浏览量很高的一个问题。Vim让初学者如此不知所措,却又被誉为“编辑器之神”。从不会到会用是很简单的,但从会用到用得好却是一个鸿沟。这篇文章的目的之一是“Vim从会用到不会”。 大多数和我一样的学生第一次遇到正则表达式应该是在Python中。但是很遗憾,编程语言中的正则表达式和Unix中的正则表达式使用的是两个不同的规范:PCRE和POSIX。POSIX又分为BRE和ERE——Unix中的正则表达式还真让人头疼。 Vim编辑器Vim四种工作模式Vim的四种工作模式分别为命令模式、插入模式、命令行模式与可视模式。 各模式间的切换如下:(后面会讲到) 回答开头的问题(怎么退出vim)。使用:q或:q!或:wq。 命令模式:刚进入Vim编辑器所处于的模式。一般在这个模式下停留最久,所以又被称为普通模式。此时我们输入的字母不会被当作文本写入文件中,而是会被当作命令解析执行。 插入模式:和我们平时使用编辑器的方式一样,输入什么,就向文件中写入 ...
Unix有三大抽象:文件对I/O设备的抽象、进程与线程对执行过程的抽象和地址空间对内存的抽象。这篇文章将介绍文件对I/O设备的抽象,后面两种抽象主要放在《操作系统》中讲,不是这门课的重点。 预备知识文件要长期保存,就必须存储在存储在硬盘这样的非易失性存储器中。以机械硬盘为例,一个硬盘包含多个盘片(记录面),每个记录面划分为若干磁道,每条磁道又可以划分为若干扇区。硬盘最小的读写单位就是一个扇区,通常为512B。 但是,读写硬盘都是很耗时的。如果每次都512B地操作,那么硬盘的读写就会占用大量的时间。所以,又将硬盘分块,块的大小一般为4KB,即8个扇区的大小。 这里的物理上的“分块”和虚拟存储器中的“分页”在逻辑上是一一对应的(地址空间对内存的抽象): Unix文件系统介绍Unix的文件分为普通文件、目录文件和特殊文件三种。普通文件包含字节序列,如代码、文本等;目录文件不是标准的ASCII文本文件,它包含了其中的各种文件的信息(包括子目录,套娃);特殊文件包含外部设备的特定信息,如驱动等。一个外设对应一个文件。 文件系统的结构上一篇中说了Unix的文件结构是下面这样的树形结构: ...
写在前面你应该听过Linux,但是也许没有听说过Unix。实际上,Linux就是Unix的一个变种,它的本质还是Unix。就好比Mysql支持sql语句,但又比原生的sql多了一些自己的语法一样。 学习Unix,一方面可以让我们多了解一些其他基于Unix的操作系统;另一方面,Linux也有不同的发行版,但它们最基本的东西都是通用的。学习Unix更便于我们在不同的Linux系统间进行切换。 本系列将使用Ubuntu系统,用的是云服务器,所以不会有图形界面。 最常用的命令下面这些都是Unix最常用的命令,使用率高达80%(据统计),各命令的含义以及它们的参数都要滚瓜烂熟! 命令格式Unix中一条命令的格式为:命令名 [-选项] [参数]。 选项包括长选项 --word和短选项 -character,如 ls --all和 ls -a,它们是全称与简写的关系。 有的选项需要带上参数,如 find -type f指定搜索的文件类型为普通文件(file)。 然后需要理解什么是命令名。命令名可以是一个可执行程序、也可以是shell内置程序或脚本程序。我们可以使用 type来查看命令类型: ...
面试体会因为涉及到保密等原因就不说多了。我的建议是:多玩游戏。 面试准备面试“2022腾讯游戏客户端开发公开课-学员”。这算是我第一次参加比较正式的面试吧,再加之本来口才就不好,所以这篇文章也写得口水话一点。统共30分钟,自问自答,就当是演练吧,希望到时候不要卡壳了😂。 下面是复习和准备时的一些知识点。C++的多态平时用的太少差不多都忘完了…… C++方面请说明引用和指针的关系? 指针的语法含义就是指向变量的地址。它本质是一个变量,用于存储其他变量的地址。指针所占空间的大小和机器或使用的编译器有关,32位机器指针占4字节,64位机器地址占8字节。 我们可以给指针附加权限,分为一般指针、指针常量int * const ptr,常量指针int const * p和指向常量的指针常量const int * const ptr。 引用则是C++中引入的新类型,语法含义是变量的别名。它也是一个变量,在内存中占的大小也是地址的大小。它的安全性同指针常量一样,只能在初始化时指定为某个变量的别名,之后就不能改变成其他变量的了。 我们也可以给引用附加权限:常引用cons ...
章节一览计算机组成原理知识点比较多,所以分多部分复习。本篇是第三部分,复习计算机的指令系统和CPU,重点是MIPS各指令的规则以及CU中与之对应的控制信号的取值。 计算机系统概述 数据的表示和运算 指令系统 中央处理器(重点) 存储的分层体系结构(重点) 互联及输入输出设备 指令系统指令系统又称为指令集ISA,表示一台计算机所能执行的全部机器指令的集合,由该计算机的CPU决定。ISA是硬件设计的依据,因此指令系统的设计至关重要。 指令格式的设计与原则? 冯诺依曼结构的计算机采用存储程序的思想,给出一个程序(n多指令),计算机能够自动执行这些指令。为了自动执行,一条指令必须明确或隐含包含的信息有:操作码、源操作数的值或地址、结果的地址、下一条指令的地址。 所以可以据此给指 ...
章节一览计算机组成原理知识点比较多,所以分多部分复习。本篇是第四部分,复习系统总线与输入输出系统,重点是磁盘与I/O接口的三种工作方式。 计算机系统概述 数据的表示和运算 指令系统 中央处理器(重点) 存储的分层体系结构(重点) 互联及输入输出设备 总线 总线的概念与组成? 和CPU内部的总线(片内总线)不同,这里研究的总线是连接计算机内各部件,如CPU、主存和各种输入输出设备的总线,称为系统总线。系统总线是一组能为多个部件分时共享的公共信息传输通路。 共享是指多个设备共同使用同一个总线;分时是指某一时刻只允许一个设备向总线发送信息,但可以有多个接收方。 总线存在于电脑的主板上。主板上刻印的线就是总线。此外提供了很多IO设备的接口(图略)。 系统总线包括地址总线、数据总线 ...
avatar
Sato
我们的前方究竟会通往何处?
Follow Me In Github
公告

莱莎的炼金工房

十年炼金无人问,一朝肉腿天下知。

住在村裡的萊莎有如鄰家女孩,是一位“再普通不過”的少女。
某日,萊莎一行下定決心,前往禁止進入的「浮島對岸」,展開首次探險活動。
于是,僅限今夏的冒險,从此开始。