引言
下面这个 C 语言的代码非常简单
#include <stdio.h>
int main()
{
printf("Hello World!.\n");
return 0;
}
在 Linux 下面,我们使用下面的命令编译就可以
gcc hello.c -o hello
但是随着项目的变大,势必会有越来越多的 .c 文件和 .h 头文件,再直接使用编译器指令就非常……继续阅读 »
迷途小书童
1年前 (2023-09-15) 652浏览 0评论
0个赞
简介
rich 是由 Will McGugan 开发的一个开源库,旨在提供更好的终端文本渲染和样式处理能力。它提供了丰富的文本格式化选项,包括颜色、粗体、斜体、下划线、对齐等。rich 不仅适用于命令行界面的美化,还可以用于生成富文本报告、日志记录、终端 UI 等。
实现原理
rich 是通过使用 ANSI 转义码来控制终端输出的样式。ANSI 转义码是一种用于在终端上显示颜色、样式和格式的特殊字符序列,而 rich……继续阅读 »
迷途小书童
1年前 (2023-09-14) 524浏览 0评论
0个赞
简介
ephem 模块为 Python 提供了精确的天文计算能力,可以预测星球、卫星的轨道信息,计算日出日落、经星时间等数据,它的算法准确可靠。最初由 Brandon Craig Rhodes 在20世纪90年代开发,经过多年扩展补充,应用非常广泛。
安装
首先,确保您的系统上安装了 Python。您可以从 Python的官方网站 下载它。
接下来,我们需要安装 ephem
打开命令提示符或终端并运行以下命令
pip……继续阅读 »
迷途小书童
1年前 (2023-09-14) 767浏览 0评论
0个赞
简介
tqdm 是一个非常常用的 Python 进度条库,它可以在循环迭代和 IO 操作期间添加一个进度条,直观地显示循环迭代的进程。
tqdm 是在2013年发布的,目的是为 Python 提供一个简单、轻量级的进度条解决方案。随后 tqdm 又增加了对 Jupyter notebook的支持,也支持在 pandas 和 PySpark 等数据处理操作中使用。现在 tqdm 已经被广泛应用于机器学习、深度学习等 P……继续阅读 »
迷途小书童
1年前 (2023-09-09) 778浏览 0评论
0个赞
简介
pathlib 模块是 Python 3.4中新增的标准库,它提供了面向对象的文件系统路径处理方法。pathlib 致力于解决直接操作文件路径字符串容易引发的错误,对路径提供了内置的多种处理方式,使用简单又功能强大。
在 pathlib 模块被引入之前,os.path 模块一直是 Python 中处理文件路径的首选。它包含许多操作路径的函数,如 os.path.join()、os.path.exists() 等……继续阅读 »
迷途小书童
1年前 (2023-09-06) 558浏览 0评论
0个赞
装饰器是一个非常有用而又常被误解的功能,可以让我们在不修改函数或类的源代码情况下给它们提供扩展功能。本文将通过具体示例带你深入理解 Python 装饰器的用法。
装饰器基础
装饰器本质上是一个函数,它可以让其他函数在不需要做任何代码变动的前提下添加额外功能。装饰器的语法如下
@decorator
def func():
pass
这里的 @decorator 就表示使用 decorator 这个装饰器来装饰……继续阅读 »
迷途小书童
1年前 (2023-09-04) 567浏览 0评论
0个赞
引言
在 Linux 编程中,多线程是一种常见的并发编程模型。为了保证多线程之间的数据同步和互斥访问,pthread_mutex(互斥锁)是一个重要的工具。本文将深入探讨 pthread_mutex 的底层实现原理、函数原型,并提供详细的使用方法和一个完整的实际案例。
概述
pthread_mutex 是 Linux 线程库(pthread)提供的一种线程同步机制,用于保护共享资源的访问。它提供了互斥锁的功能,确保同……继续阅读 »
迷途小书童
1年前 (2023-08-31) 558浏览 0评论
0个赞
简介
作为 Python 开发者,我们都希望代码运行更快一些,今天给大家介绍一个实用的工具模块 timeit,它可以帮我们精确测量 Python 代码的执行时间。赶快来看看吧!
timeit 模块是 python 的内置模块,不需要另外安装。它为我们提供了一个重复执行代码片段的简单接口,可以准确地测量 Python 代码的执行时间,同时使用方法也非常简单,让我们能够更专注于业务代码本身,而不需要写额外的计时代码。
底……继续阅读 »
迷途小书童
1年前 (2023-08-28) 582浏览 0评论
0个赞
loguru简介
loguru 是 Python 的一个第三方日志模块,相较于标准库 logging 模块,它提供了更简洁易用的 API,内置丰富的格式化、过滤、文件输出等高级功能。loguru 让 Python 日志记录变得非常简单、Pythonic。
loguru 的优点包括
API 简单易用
功能强大,内置多种高级日志功能
高性能,速度快过标准 logging
支持格式化日志输出
方便地输出到文件
自动记录异……继续阅读 »
迷途小书童
1年前 (2023-08-26) 767浏览 0评论
0个赞
YAML 是一种人性化的数据序列化格式,使用空格缩进表示层级关系,相比 JSON 更具可读性。Python 中使用 PyYAML 库可以方便地解析和生成 YAML 格式数据。本文将详细介绍 PyYAML 的用法。
YAML格式
YAML 的格式主要有以下几点特征
使用空格表示层级关系
使用冒号 : 表示键值对
使用 - 表示数组项
支持多行字符串
支持数据类型:数字、布尔值、字符串、数组、字典
下面看个示例
na……继续阅读 »
迷途小书童
1年前 (2023-08-26) 620浏览 0评论
0个赞
reactpy介绍
reactpy 是一个用 Python 语言实现的 ReactJS 框架。它可以让我们使用 Python 的方式来编写 React 的组件,构建用户界面。
reactpy 的目标是想要将 React 的优秀特性带入 Python 领域,包括组件化、虚拟 DOM、声明式编程等。它可以无缝集成到我们的 Python 后端应用中。
实现原理
reactpy 的核心原理是使用 JavaScript 编写的……继续阅读 »
迷途小书童
1年前 (2023-08-25) 671浏览 0评论
0个赞
环境
python 3.9.16
nicegui 1.3.9
前言
在现代计算机应用程序开发中,图形用户界面(GUI)是用户与程序交互的重要组成部分。然而,GUI 开发往往需要大量的代码和复杂的布局,给开发者带来了一定的挑战。在本篇博文中,将介绍 nicegui,它是一个简单易用的图形用户界面库,提供了一种简化 GUI 开发的方式,使开发者能够更快速地构建吸引人的用户界面。
实现原理
nicegui 基于 Pyt……继续阅读 »
迷途小书童
1年前 (2023-08-18) 1275浏览 0评论
0个赞
环境
android 9
mtk方案
简介
本文介绍了如何导出 Android 设备的分区镜像。通过使用 Android Debug Bridge(ADB)工具,可以与设备进行通信并获取特定分区的副本,如 system 分区、boot 分区和 recovery 分区。文章提供了简单的步骤指南,导出的镜像文件可以用于设备备份、分析、修改或还原。然而,对设备分区的操作需要谨慎,请确保了解相关风险并遵守法律和政策。
实……继续阅读 »
迷途小书童
1年前 (2023-08-17) 1128浏览 0评论
0个赞
环境
ubuntu 18.04 64bit
riscv-gnu-toolchain
RISC-V简介
RISC-V(发音为 risk-five)是一种基于精简指令集计算机(RISC)原则的开源指令集架构(ISA)。与许多其他指令集架构(如ARM、MIPS等)不同,RISC-V 是免费和开放的,任何人都可以使用、设计和实现该架构,而无需支付专利费用。目前,国内芯片产业要国产化,基本上都是走的这条路线,像平头哥、赛昉……继续阅读 »
迷途小书童
1年前 (2023-08-10) 806浏览 0评论
0个赞
环境
centos 8
问题描述
一大早,机房里的一台 Dell 服务器就开始报警,检查后,发现是其中的一个硬盘槽坏了,然后就给它挪了个硬盘槽位置,安装好后,上电开机,系统报错
Metadata CRC error detected at xfs_agi_read_verify+0xcb/0xf0 [xfs], xfs_agi block 0x2
XFS (loop0): Unmount and run xfs_……继续阅读 »
迷途小书童
1年前 (2023-08-10) 664浏览 0评论
0个赞
前言
AI 和高性能计算(HPC)的需求不断增长,单 GPU 的性能越来越捉襟见肘,因此需要在多 GPU 之间实现无缝连接,以便它们可以作为一个巨大的加速器相互协作。虽然已经存在 PCIe 标准,但带宽有限,因此通常会产生瓶颈。为构建功能强大的端到端计算平台,我们需要速度更快、扩展性更强的互联方式。
NVLink
NVIDIA NVLink 是世界首项高速 GPU 互连技术,与传统的 PCIe 系统解决方案相比,它能……继续阅读 »
迷途小书童
1年前 (2023-08-09) 744浏览 0评论
0个赞
环境
ubuntu 22.04 64bit
windows 11 64bit
简介
TFTP (Trivial File Transfer Protocol)是一种简单的文件传输协议,通常用于在联网设备之间传输配置文件和固件映像。在本文中,我们将在 Ubuntu 22.04 系统上完成安装和设置 TFTP。
服务器安装配置
首先,打开终端,执行下面命令来安装软件包
sudo apt install tftpd-h……继续阅读 »
迷途小书童
1年前 (2023-07-19) 1227浏览 0评论
0个赞
环境
windows 11 64bit
2to3
简介
Python2 和 Python3 在语法和某些模块的使用上是有一些差别的,对于一些用 python2 编写的历史项目,要重新启用它们,2to3 是一个不错的转换工具,也是官方提供的工具,不需要安装,可靠性也比较高,它读取 Python 2.x 源代码并应用一系列修复程序将其转换为有效的 Python 3.x 代码。
实操
可以在终端中查看命令支持的所有参数……继续阅读 »
迷途小书童
1年前 (2023-07-17) 597浏览 0评论
0个赞