自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(370)
  • 收藏
  • 关注

原创 常见的文件协议有哪些呢?

除了以上几种常见的文件协议外,还有SCP(Secure Copy Protocol,安全复制协议)、Samba、WebDAV(Web-based Distributed Authoring and Versioning,基于Web的分布式创作和版本控制)等其他专用的文件传输协议,它们在不同的场景和需求下提供了特定的功能和安全性。- **简介**:FTP是最早的文件传输协议之一,用于在客户端和服务器之间传输文件。- **特点**:通过SSL/TLS提供了数据传输的加密和身份验证,具有较高的安全性。

2024-08-16 19:47:06 314

原创 在go语言里io.EOF怎么理解呢?

io.EOF`是Go标准库中`io`包定义的一个错误值,用于在读取操作达到文件末尾时返回。当读取操作(如`Read`方法)成功读取到文件末尾时,它会返回`io.EOF`错误,以指示没有更多的数据可以读取。2. **类型检查**:使用`errors.Is(err, io.EOF)`函数来进行类型检查,以确定错误是否确实是`io.EOF`。3. **优雅退出**:当遇到`io.EOF`时,通常意味着文件已经读取完毕,此时可以优雅地退出循环或执行其他清理操作。// 使用for循环读取文件,直到遇到EOF。

2024-08-16 12:25:01 1070

原创 md5sum+可执行文件 怎么理解?

1. **验证下载文件的完整性**:当你从互联网下载某个可执行文件时,文件的提供者通常会提供一个该文件的 MD5 哈希值。你可以使用 `md5sum` 命令计算你下载文件的 MD5 哈希值,然后与提供的哈希值进行比较,以确保下载过程中文件没有损坏或被篡改。3. **版本控制**:在软件开发过程中,开发者可能会使用 MD5 哈希值来跟踪文件的变更。2. **确保软件包的正确性**:在软件包管理中,分发者可能会为软件包提供 MD5 哈希值,以便用户能够验证他们下载的软件包是否与分发者提供的相同。

2024-08-15 11:32:44 603

原创 go语言里删除或清空某个目录下的所有文件

如果你还想删除空子目录,你可以在递归调用`deleteAllFilesInDir`之后,检查子目录是否为空(即不再包含任何文件或子目录),然后使用`os.Remove`来删除它。以下是一个简单的示例,展示了如何使用`os`和`path/filepath`包来遍历并删除一个目录下的所有文件(包括子目录中的文件,但不保留任何空子目录)。在Go语言中,删除或清空某个目录下的所有文件,你需要遍历该目录下的所有文件和子目录,并对每个文件执行删除操作。// 删除目录下的所有文件及子目录(不包括空子目录)

2024-08-15 10:13:45 495

原创 a+和w是什么意思?

**a+**:在某些编程或数学语境中,`a+`可能不直接表示文件操作模式,而是表示对变量`a`执行某种加法的操作或表达式。但请注意,在C语言中,单独的`a+`并不构成一个运算符或直接的操作,它通常出现在表达式中,如`a = a + 1`或`b = a + 5`,表示将`a`的值与另一个值相加。此外,在物理学、化学、数学、金融、网络用语、计算机编程、国际单位制等多个领域,`w`都有其特定的含义或用途,如表示功、氚的符号、集合、工资、笑、变量名、瓦特等。这意味着,使用`w`模式,你将无法保留原文件的内容。

2024-08-14 22:01:33 455

原创 Python里的set()和set{}有什么区别?

如果你尝试用 `{}` 创建一个只包含一个元素的集合(例如 `{1}`),Python 会将其解释为包含键 `1`、值为 `None` 的字典。为了创建一个只包含一个元素的集合,你应该使用 `set([1])` 或者 `{1,}`(注意逗号的使用,这是Python语法的一部分,用于区分集合和字典字面量)。`set()` 是一个内置函数,用于创建一个空集合或者从一个可迭代对象(如列表、元组、字符串等)创建一个新的集合。- **用途**:`set()` 用于创建集合,而 `{}` 主要用于创建字典。

2024-08-13 23:16:22 351

原创 Python里怎么使用逆波兰表达式呢?

在上面的代码中,我们定义了一个`eval_rpn`函数,它接受一个token列表作为输入,这个列表包含了数字和运算符。如果遇到一个运算符,则从栈中弹出两个操作数(注意,弹出顺序是先弹出第二个操作数,再弹出第一个操作数,因为栈是后进先出的),根据运算符进行相应的计算,然后将结果压回栈中。在Python中,使用逆波兰表达式(也称为后缀表达式)进行计算,通常涉及到栈(Stack)数据结构。逆波兰表达式是一种数学表达式,其中运算符位于其操作数之后,这使得解析和计算变得简单且直接,因为不需要考虑运算符的优先级。

2024-08-13 13:58:13 449

原创 执行Python脚本的时候提供参数

在Python中,执行脚本时提供参数是一个常见的需求,这可以通过Python的`sys.argv`列表来实现。`sys.argv`是一个从命令行读取参数的列表,其中`sys.argv[0]`是脚本的名称,而`sys.argv[1:]`包含了传递给脚本的所有参数。你可以根据需要修改`main`函数中的逻辑,以执行更复杂的操作。假设你已经将上面的脚本保存为`example.py`,你可以通过命令行(终端或命令提示符)来执行它,并提供一些参数。下面是一个简单的例子,展示了如何接收命令行参数并在脚本中使用它们。

2024-08-08 19:39:53 357

原创 go post请求,参数是raw json格式,response是固定结构。

当需要发送raw JSON格式的参数时,通常会使用`encoding/json`包来将Go的结构体序列化为JSON字符串,然后使用`http.NewRequest`函数创建请求,并通过`http.Client`发送这个请求。服务器响应后,我们读取响应体,并将其反序列化为`Response`结构体,最后打印出响应的状态和消息。请注意,你需要将`"http://example.com/api/users"`替换为你实际要请求的URL。// 将响应体反序列化为Response结构体。// 创建POST请求。

2024-08-08 19:35:54 695

原创 怎么使用git merge合并两个分支?

4. **切换到目标分支**:如果你要合并`feature-branch`到`main`分支,并且你当前不在`main`分支上,那么你需要先切换到`main`分支。5. **执行合并操作**:现在,你已经位于`main`分支上了,可以使用`git merge`命令来合并`feature-branch`分支。使用`git branch`查看所有分支,当前分支前面会有`*`号标记。- 确保你已经安装了Git,并且熟悉基本的Git命令,如`git clone`、`git add`、`git commit`等。

2024-08-07 19:45:10 737

原创 在c++中queue的数据结构是线程安全的吗?

2. **底层容器**:`std::queue`通常基于一个底层容器(如`std::deque`,默认情况)来实现。1. **使用互斥锁**:通过在访问队列的每个操作(如`push`、`pop`、`front`、`back`等)时加锁,可以确保同一时间只有一个线程可以修改队列。4. **智能指针**:使用`std::shared_ptr`和`std::unique_ptr`等智能指针可以帮助管理队列中元素的内存,避免手动`new`和`delete`带来的问题,如内存泄漏和重复释放。

2024-08-07 13:59:29 427

原创 go语言的actor框架和air工具有什么区别?

**易于扩展**:Actor模型提供了清晰的扩展路径,可以通过增加Actor的数量来提升系统的处理能力。* **设计目的**:Air是一款开源的实时重载命令行工具,旨在提升Go语言开发者的编码体验和加速开发流程。* **高效编译**:采用先进的文件监听机制和高效的编译策略,确保开发过程中的细微变化都能被迅速捕获。* **状态封装**:每个Actor维护自己的状态,外部无法直接访问,保证了数据的安全性和隔离性。* **日志输出**:提供色彩绚丽的日志输出,便于在复杂的控制台环境中区分和识别信息。

2024-08-06 14:08:21 359

原创 Python里的pool.starmap怎么使用?

我们使用 `p.starmap(add, data)` 来并行地执行 `add` 函数,其中 `add` 函数的每个调用都会接收到 `data` 列表中的一个元组作为输入。`starmap` 会自动解包这些元组,使得 `add` 函数能够接收到两个单独的参数(在本例中为 `x` 和 `y`)。`pool.starmap` 是 Python 中 `multiprocessing.Pool` 类的一个方法,它允许你并行地执行一个函数,其中每个输入参数都是元组(或其他可迭代对象)中的元素。

2024-08-06 09:53:31 407

原创 Python怎么实现多进程共享数据?

在Python中,由于全局解释器锁(GIL)的存在,多线程在执行CPU密集型任务时并不能真正并行运行,这限制了多线程在处理这类任务时的效率。对于CPU密集型任务,多进程是一个更好的选择,因为每个进程都有自己独立的内存空间,Python的GIL不会影响到它们之间的并行执行。- 共享数据可能会增加程序的复杂性和错误风险,特别是在多个进程需要频繁读写共享数据时。`multiprocessing`模块提供了`Value`和`Array`类,这些类可以用于在多个进程之间共享简单的数据类型(如整数、浮点数等)和数组。

2024-08-05 15:00:35 672

原创 Python setdefault方法简单使用

setdefault` 是 Python 字典(`dict`)类型中的一个非常有用的方法,它用于设置字典中给定键的值,如果键不存在则添加键并将值设为指定的默认值。- 返回键的值,如果键在字典中已存在则返回其值;print(word_counts) # 输出: {'hello': 2, 'world': 1, 'python': 1}- 如果键已经存在于字典中,则 `setdefault` 方法不会改变其值,而是直接返回其当前值。- `default`:如果键不存在于字典中,则设置此值为该键的值。

2024-08-05 14:56:53 388

原创 如果有上万个协程,性能有影响吗?

4. **CPU密集型任务**:如果协程执行的是CPU密集型任务(即需要大量计算的任务),那么即使协程数量很多,也可能无法充分利用多核CPU的性能。2. **调度开销**:虽然协程的调度开销较小,但当协程数量极多时,调度器也需要花费更多的时间来管理这些协程。- **异步编程最佳实践**:遵循异步编程的最佳实践,如避免在协程中使用阻塞操作、合理使用`async with`和`async for`等异步上下文管理器。- **使用协程池**:类似于线程池或进程池,你可以使用协程池来限制同时运行的协程数量。

2024-08-03 10:28:20 417

原创 Python怎么实现协程并发呢?

在这个例子中,`fetch_data`是一个协程函数,它模拟了从某个URL获取数据的异步操作(实际上是通过`asyncio.sleep(1)`来模拟网络延迟)。`main`函数是另一个协程,它创建了三个`fetch_data`协程的任务,并使用`asyncio.gather`来并发地运行这些任务。使用`async`和`await`关键字,你可以定义协程和等待其他协程的完成,而不需要创建额外的线程或进程。`asyncio.run`函数会创建一个事件循环,运行传入的协程,并在协程完成后关闭事件循环。

2024-08-03 10:18:48 557

原创 go语言怎么把字符串都转化为大写?

在这个示例中,我们导入了`fmt`和`strings`包,并定义了一个包含小写字母的字符串`originalStr`。然后,我们使用`strings.ToUpper`函数将`originalStr`中的所有小写字母转换成了大写字母,并将结果存储在`upperStr`变量中。最后,我们使用`fmt.Println`函数打印出转换后的字符串`upperStr`。要将字符串转换为大写,你可以使用`strings`包中的`ToUpper`函数。GO IS FUN!// 将字符串转换为大写。

2024-08-01 10:20:30 334

原创 go语言怎么把字符串都转化为小写?

在这个示例中,我们首先导入了`fmt`和`strings`包。然后,我们定义了一个包含大写字母的字符串`originalStr`。接着,我们使用`strings.ToLower`函数将`originalStr`中的所有大写字母转换成了小写字母,并将结果存储在`lowerStr`变量中。最后,我们使用`fmt.Println`函数打印出转换后的字符串`lowerStr`。在Go语言中,将字符串全部转化为小写非常直接,可以使用`strings`包中的`ToLower`函数。go is fun!

2024-08-01 10:16:30 608

原创 go mod vendor是什么意思?

go mod vendor` 是 Go 语言模块系统中的一个命令,用于将项目依赖的所有模块(库)复制到项目目录下的 `vendor` 文件夹中。- 如果你更新了 `go.mod` 文件(例如,添加了新的依赖或更新了依赖版本),你需要重新运行 `go mod vendor` 来更新 `vendor` 目录。- 使用 `go mod vendor` 后,你的项目将使用 `vendor` 目录中的依赖来构建,而不是直接从模块缓存或远程仓库中获取。### 为什么使用 `go mod vendor`?

2024-07-31 11:30:50 358

原创 go语言有什么框架可以实现dataauth?

你可以使用Go语言中的第三方库(如`github.com/dgrijalva/jwt-go`,注意:该库已被弃用,可考虑使用`github.com/golang-jwt/jwt/v4`等替代品)来生成和验证JWT令牌。在Go语言中,虽然没有直接名为“dataauth”的框架,但你可以使用多个流行的Web框架来实现数据认证(Data Authentication)和授权(Authorization)机制。它支持中间件,你可以使用第三方认证库(如JWT、OAuth等)的中间件来轻松集成认证功能。

2024-07-30 14:49:39 265

原创 go语言怎么实现dataauth?

在Go语言中实现数据认证(Data Authentication),通常指的是确保数据的完整性(Integrity)和真实性(Authenticity),防止数据在传输或存储过程中被篡改。在这个例子中,`generateHMAC`函数用于生成消息的MAC值,而`verifyHMAC`函数则用于验证消息的MAC值。然后,使用`Write`方法写入要认证的数据,最后通过`Sum`方法获取MAC值。为了验证数据的完整性和真实性,你需要重新计算接收到的数据的MAC值,并将其与随数据一起发送的MAC值进行比较。

2024-07-30 10:02:07 371

原创 Python里lambda怎么使用呢?

lambda` 函数经常与如 `filter()`, `map()`, `sorted()`, `reduce()` 等内置函数结合使用,以提供灵活的函数式编程接口。你可以把这个函数对象赋值给一个变量,就像上面的 `square` 和 `add` 那样。print(pairs) # 输出: [(4, 'four'), (1, 'one'), (3, 'three'), (2, 'two')]`sorted()` 函数允许你通过 `key` 参数传递一个函数,以指定排序的准则。### 与内置函数结合使用。

2024-07-29 17:27:29 787

原创 Python怎么保留小数?

round()`函数可以四舍五入到指定的小数位数,但请注意,`round()`函数返回的是一个浮点数,而不是字符串。- 如果你需要格式化输出到字符串,使用`str.format()`或f-string。### 1. 使用格式化字符串(`str.format()` 或 f-string)- 如果你需要四舍五入到某个精度并保留为浮点数,使用`round()`。对于需要精确控制小数的金融计算等场景,可以使用`decimal`模块。- 如果你在处理需要高精度的财务计算,使用`decimal`模块。

2024-07-29 11:45:58 366

原创 rosbag play *bag --clock有什么作用?

3. **支持多`.bag`文件播放**:虽然命令中使用`*bag`来代表播放所有`.bag`文件,但在实际使用中,你可能需要指定一个或多个具体的`.bag`文件。使用`--clock`选项时,如果同时播放多个`.bag`文件,ROS将尝试根据这些`.bag`文件中记录的时间戳来同步它们的播放。1. **同步时间**:当使用`--clock`选项时,`rosbag play`命令会将当前播放的`.bag`文件中记录的时间戳作为ROS的系统时间(也称为“wall time”)。

2024-07-26 16:54:04 335

原创 roscore命令有什么作用?

**核心管理功能**:`roscore`命令用于启动ROS系统中的核心管理节点——ROS Master。* **日志记录**:同时,`roscore`会运行`rosout`,这是一个用于记录ROS中使用的ROS标准输出日志的节点,例如DEBUG、INFO、WARN、ERROR和FATAL等日志级别。* **日志存储**:`roscore`启动后,ROS系统的日志将被保存在特定的目录中(如`/root/.ros/log/`),用户可以通过这些日志进行问题追踪和系统调试。### 3. 必要条件。

2024-07-26 16:51:29 409

原创 Ubuntu对比两个文件内容有什么区别?

meld` 是一个图形界面的文件差异和合并工具,它比 `vimdiff` 更易于使用,尤其是对于不习惯命令行或Vim的用户。`colordiff` 是 `diff` 的一个彩色版本,它使用颜色来高亮显示差异,使得差异更容易识别。还有其他一些工具和应用程序也可以用于比较文件差异,如 `kompare`(KDE的一部分)、`kdiff3` 等。如果你只想看到两个文件之间的不同行(而不是每个不同的上下文),可以使用 `-u` 或 `--unified` 选项来以统一格式显示差异。

2024-07-25 15:05:48 490

原创 protoactor-go 框架一般用于构建什么程序?

4. **复杂业务逻辑**:当业务逻辑变得复杂,需要处理多种状态转换和条件判断时,使用Actor模型可以使代码更加清晰和易于管理。5. **分布式系统**:在分布式系统中,节点之间需要进行通信和协作。1. **微服务架构**:在微服务架构中,每个服务都是一个独立的进程,它们之间通过消息传递进行通信。6. **事件驱动编程**:protoactor-go 框架基于事件驱动编程模型,这意味着它支持响应式编程范式。3. **游戏开发**:游戏通常需要处理大量的并发操作和玩家交互。

2024-07-25 12:18:02 929

原创 keycloak简单了解

5. **集成应用程序**:将Keycloak客户端库添加到您的Web应用程序中,并根据需要使用Keycloak提供的API进行身份验证和授权。2. **创建Realm**:在Keycloak的管理界面中,创建一个名为“MyWebAppRealm”的Realm,用于管理Web应用程序的用户、角色和权限。3. **简单易用的管理控制台**:Keycloak的管理控制台允许管理员创建和管理用户账户、角色和权限,确保只有被允许的客户端能够接收令牌并访问资源。您希望使用Keycloak来处理用户的身份验证和授权。

2024-07-25 12:10:41 469

原创 Python里怎么写else if?(elif)

程序首先检查`x`是否小于0,如果不是,则继续检查`x`是否等于0,如果还不是,则检查`x`是否大于0。因为`x`是10,所以它会打印出"x is positive"。`else`块在这里是冗余的,因为前面的条件已经覆盖了所有可能的情况,但有时候你可能会在逻辑中留一个`else`块来处理任何未被明确处理的情况(尽管在这个例子中它永远不会执行)。在Python中,没有`else if`这个关键字组合,但你可以使用`elif`(即"else if"的缩写)来实现条件判断的逻辑。

2024-07-18 14:21:59 323

原创 怎么理解redis持久化?

在实际使用中,你可以根据应用场景的需求来选择使用 RDB 还是 AOF,或者同时使用它们来提高数据的可靠性和恢复速度。+ 在 RDB 文件生成过程中,Redis 仍然处于处理请求的状态,因此可能存在数据丢失的风险(丢失最后一次快照后的数据)。+ 数据更可靠,因为 AOF 文件保存了所有写操作的日志,只要日志文件不丢失,就可以通过重新执行这些日志来恢复数据。+ 恢复数据时,需要重新执行 AOF 文件中的所有命令,因此恢复速度可能会比 RDB 慢。+ AOF 文件是一个追加写入的文件,因此写入性能非常高。

2024-07-18 09:49:51 361

原创 redis存入hash,key=>value和key=>(key=>value)使用Python举例

同样,当我们将 Python 字典存储为 Redis HASH 的值时,我们使用了 `json.dumps()` 将其序列化为字符串,并使用 `json.loads()` 在检索时反序列化它。在 Redis 中,`HASH` 数据结构(也称为 `HMAP` 或 `Hash Map`)允许你存储键值对集合,其中每个键值对都是字段(field)和值(value)的映射。# 这里假设我们有一个名为 "user:1" 的 HASH,我们要存入 "name" => "Alice" 和 "age" => 30。

2024-07-16 21:27:55 536

原创 echarts忽略Null值:使用echarts的connectNulls

请注意, connectNulls 的默认值为 false ,即不连接空数据。在上述示例中, series 里的 data 数组中包含了一个空值 '-' ,通过设置 connectNulls: true ,Echarts 会在绘制折线图时连接这些空数据点,使折线不会出现中断。data:(5, 20, 36, '-', 10, 20), // 这里的数据中包含了一个空值 '-'data:("衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子")// 指定图表的配置项和数据。

2024-07-16 19:01:01 421

原创 k8s secret-从环境变量里去读和从yaml文件里读取secret有什么区别?

**YAML文件方式**:通过YAML文件(通常是Pod的定义文件)配置Secret的使用时,Secret通常以Volume的形式被挂载到Pod中,容器通过读取挂载目录中的文件来获取Secret数据。然而,需要注意的是,环境变量方式不支持Secret的动态更新,即如果Secret中的数据发生了变化,已经运行中的Pod中的环境变量不会自动更新。- **YAML文件方式**:通过YAML文件方式配置Secret可以提供更多的灵活性和可配置性,可以根据需要控制Secret数据的访问权限、路径等。

2024-07-15 14:25:26 426

原创 k8s怎么配置secret呢?

具体来说,`user`和`password`两个键将分别对应`/etc/secrets/db/user`和`/etc/secrets/db/password`两个文件,文件中存储的是解码后的值。* 首先,编辑一个YAML文件,定义Secret的属性,包括`apiVersion`、`kind`、`metadata`(包括`name`)和`data`(包含base64编码的键值对)。* **作为容器的环境变量**:可以在Pod的定义文件中指定Secret中的某个Key作为环境变量的值。

2024-07-15 08:50:30 928

原创 git reset hard和soft的使用和区别

git reset`主要有三种模式:`--soft`、`--mixed`(默认)和`--hard`。总之,选择使用`--hard`还是`--soft`模式取决于你想要保留的更改级别和场景需求。- 语法:`git reset --hard [commit]` 或 `git reset --hard HEAD^`(回退到上一个版本)- 语法:`git reset --soft [commit]` 或 `git reset --soft HEAD^`(回退到上一个版本)1. **对暂存区和工作区的影响**

2024-07-12 16:20:47 737

原创 go语言处理特定格式的时间 例如打印出来2024-07-12 12:22:22 -2024-07-12 12:52:22

它使用了一个特殊的格式`"2006-01-02 15:04:05"`作为参考模板,其中`2006`代表年份,`01`代表月份,`02`代表日期,`15`代表小时(24小时制),`04`代表分钟,`05`代表秒。要打印出两个特定时间(例如开始时间和结束时间)的字符串表示,并且格式化为`YYYY-MM-DD HH:MM:SS`这样的形式,你可以使用`time.Format`方法。然后,使用`time.Time`的`Add`方法给开始时间加上30分钟来得到结束时间。// 假设结束时间是开始时间后30分钟。

2024-07-12 15:23:01 393

原创 git revert怎么使用?

`--mainline parent-number` 或 `-m parent-number`:当你处理一个具有多个父提交的提交(例如,由 git merge 创建的合并提交)时,这个选项允许你指定哪个父提交应该被视为主线。这里 `commit_id_start` 是你想要开始撤销的提交的哈希值,`commit_id_end` 是你想要结束撤销的提交的哈希值(不包括这个提交本身)。git revert 的使用主要涉及到撤销一些现有的提交,并记录一些新的提交以反映这些更改的撤销。

2024-07-11 16:13:29 651

原创 git patch怎么使用?

解决冲突后,你可以使用 `git add` 命令标记冲突已解决,然后使用 `git commit` 命令完成合并。如果你希望将这些更改提交到 Git 仓库,你需要先使用 `git add` 命令添加更改,然后使用 `git commit` 命令提交。如果你有一个 `.patch` 文件,你可以使用 `git apply` 命令来应用它。* `git am` 用于应用由 `git format-patch` 生成的补丁文件。* `git format-patch` 用于将 Git 提交转换为补丁文件。

2024-07-11 14:44:15 639

原创 为什么go语言里从前端接收到的参数是数字28546.123456,但是不能使用float32只能使用float64呢?

如果你的数字超过了 `float32` 的精度范围,或者你需要更高的精度,那么使用 `float64` 会更安全。4. **内存使用**:虽然 `float64` 比 `float32` 占用更多的内存(分别是 8 字节和 4 字节),但在现代计算机上,这种差异通常可以忽略不计,除非你在处理大量数据或内存使用是关键因素。6. **显式转换**:如果你确实需要将 `float64` 转换为 `float32`,你可以使用类型转换,但请注意这可能会导致精度损失。

2024-07-10 18:27:22 400

channel.png

go语言里channel相关的内容

2024-03-06

channel.pdf

go语言里channel相关的内容

2024-03-06

http_https-导出.pdf

http_https-导出

2024-03-05

http_https-导出.png

http_https-导出

2024-03-05

技术选择-导出.png

技术选择-导出

2024-03-02

技术选择-导出.pdf

技术选择-导出

2024-03-02

ruby1-导出.png

ruby1-导出

2024-03-01

ruby1-导出-1.pdf

ruby1-导出-1

2024-03-01

react-d3-map-chain-all-provinces.json

在react里使用d3中国地图需要的json,包含了各个省份的地理位置。

2023-09-18

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除