<?xml version='1.0' encoding='UTF-8'?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0"><channel><title>极简技术博客</title><link>https://NGDBZ.github.io</link><description>随意贴些代码及思维碎片</description><copyright>极简技术博客</copyright><docs>http://www.rssboard.org/rss-specification</docs><generator>python-feedgen</generator><image><url>https://avatars.githubusercontent.com/u/121368662?v=4&amp;size=64</url><title>avatar</title><link>https://NGDBZ.github.io</link></image><lastBuildDate>Mon, 09 Feb 2026 12:30:46 +0000</lastBuildDate><managingEditor>极简技术博客</managingEditor><ttl>60</ttl><webMaster>极简技术博客</webMaster><item><title>正向传播、反向传播、梯度下降</title><link>https://NGDBZ.github.io/post/zheng-xiang-chuan-bo-%E3%80%81-fan-xiang-chuan-bo-%E3%80%81-ti-du-xia-jiang.html</link><description>梯度下降**既不是正向传播，也不是反向传播**，三者是深度学习模型训练中**不同环节**，反向传播负责**求梯度**，梯度下降负责**用梯度更新参数**，正向传播是基础前提。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/zheng-xiang-chuan-bo-%E3%80%81-fan-xiang-chuan-bo-%E3%80%81-ti-du-xia-jiang.html</guid><pubDate>Mon, 09 Feb 2026 12:30:21 +0000</pubDate></item><item><title>什么是算子</title><link>https://NGDBZ.github.io/post/shen-me-shi-suan-zi.html</link><description>作为编程小白，我用最接地气的方式给你讲清楚“算子”到底是什么，保证不用任何专业术语也能懂～

### 先一句话总结（核心）
**算子（Operator）就是AI模型里的“最小功能积木块”** —— 模型做的每一个具体计算，都是靠一个个算子拼起来的。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/shen-me-shi-suan-zi.html</guid><pubDate>Mon, 09 Feb 2026 02:52:58 +0000</pubDate></item><item><title>AMCT和ATC区别</title><link>https://NGDBZ.github.io/post/AMCT-he-ATC-qu-bie.html</link><description>AMCT（昇腾模型压缩工具）与ATC（昇腾模型转换工具）是CANN生态中紧密配合的核心工具，前者负责模型压缩“瘦身”，后者负责模型转换“适配部署”，二者共同支撑昇腾NPU的高效推理，核心区别与协作流程如下。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/AMCT-he-ATC-qu-bie.html</guid><pubDate>Mon, 09 Feb 2026 02:41:34 +0000</pubDate></item><item><title>序列化</title><link>https://NGDBZ.github.io/post/xu-lie-hua.html</link><description>需要序列化的核心判断标准：只要数据需要'跨边界'（离开当前Python进程、存储到磁盘、通过网络传输、与其他语言交互），就必须序列化。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/xu-lie-hua.html</guid><pubDate>Wed, 04 Feb 2026 05:53:50 +0000</pubDate></item><item><title>工作注意</title><link>https://NGDBZ.github.io/post/gong-zuo-zhu-yi.html</link><description>![Image](https://github.com/user-attachments/assets/a46bb455-13cb-4e74-8bec-ec5ff23b70fe)
每次完成任务后，再评论里加上数据统计，每个平台采集了多少数据，用的关键词是哪些


数据彻底上传完服务器之前，不要点完成任务，容易误导别人数据已经采集完成了


服务器不要出现中文。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/gong-zuo-zhu-yi.html</guid><pubDate>Wed, 04 Feb 2026 02:44:59 +0000</pubDate></item><item><title>scp服务器上传</title><link>https://NGDBZ.github.io/post/scp-fu-wu-qi-shang-chuan.html</link><description>

## 正确命令：
```bash
# 从本地 上传到 远程
scp /home/ldb/下载/crawlersys/downloaded_images/gettyimages#20260203#人床_1.zip admin@192.168.0.173:/share/Task_Server/0021BabyBodyAge/Class0026#AdultTopView/00RawData/
```

## 详细说明：
- **本地文件**：`/home/ldb/下载/crawlersys/downloaded_images/gettyimages#20260203#人床_1.zip`
- **远程目标**：`admin@192.168.0.173:/share/Task_Server/0021BabyBodyAge/Class0026#AdultTopView/00RawData/`

## 完整命令：
```bash
scp '/home/ldb/下载/crawlersys/downloaded_images/gettyimages#20260203#人床_1.zip' admin@192.168.0.173:'/share/Task_Server/0021BabyBodyAge/Class0026#AdultTopView/00RawData/'
```

## 其他有用参数：
```bash
# 1. 显示进度
scp -v '/home/ldb/下载/crawlersys/downloaded_images/gettyimages#20260203#人床_1.zip' admin@192.168.0.173:'/share/Task_Server/0021BabyBodyAge/Class0026#AdultTopView/00RawData/'

# 2. 使用特定端口（如果不是默认22）
scp -P 2222 '/home/ldb/下载/crawlersys/downloaded_images/gettyimages#20260203#人床_1.zip' admin@192.168.0.173:'/share/Task_Server/0021BabyBodyAge/Class0026#AdultTopView/00RawData/'

# 3. 压缩传输（对大文件有用）
scp -C '/home/ldb/下载/crawlersys/downloaded_images/gettyimages#20260203#人床_1.zip' admin@192.168.0.173:'/share/Task_Server/0021BabyBodyAge/Class0026#AdultTopView/00RawData/'

# 4. 保持文件属性
scp -p '/home/ldb/下载/crawlersys/downloaded_images/gettyimages#20260203#人床_1.zip' admin@192.168.0.173:'/share/Task_Server/0021BabyBodyAge/Class0026#AdultTopView/00RawData/'
```

## 执行步骤：
```bash
# 1. 先测试连接
ssh admin@192.168.0.173 'ls -la /share/Task_Server/0021BabyBodyAge/'

# 2. 上传文件
scp '/home/ldb/下载/crawlersys/downloaded_images/gettyimages#20260203#人床_1.zip' admin@192.168.0.173:'/share/Task_Server/0021BabyBodyAge/Class0026#AdultTopView/00RawData/'

# 3. 验证上传
ssh admin@192.168.0.173 'ls -la /share/Task_Server/0021BabyBodyAge/Class0026#AdultTopView/00RawData/'
```

## 如果文件名有特殊字符：
```bash
# 使用引号包裹路径
scp '/home/ldb/下载/crawlersys/downloaded_images/gettyimages#20260203#人床_1.zip' \
    admin@192.168.0.173:'/share/Task_Server/0021BabyBodyAge/Class0026#AdultTopView/00RawData/'
```

## 如果文件很大，可以先用 rsync（支持断点续传）：
```bash
rsync -avzP '/home/ldb/下载/crawlersys/downloaded_images/gettyimages#20260203#人床_1.zip' \
    admin@192.168.0.173:'/share/Task_Server/0021BabyBodyAge/Class0026#AdultTopView/00RawData/'
```

请运行这个正确的命令。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/scp-fu-wu-qi-shang-chuan.html</guid><pubDate>Wed, 04 Feb 2026 02:07:19 +0000</pubDate></item><item><title>VUE3 挂载 = 组件从代码变成真实网页并出现在屏幕上的那一刻。</title><link>https://NGDBZ.github.io/post/VUE3%20-gua-zai-%20%3D%20-zu-jian-cong-dai-ma-bian-cheng-zhen-shi-wang-ye-bing-chu-xian-zai-ping-mu-shang-de-na-yi-ke-%E3%80%82.html</link><guid isPermaLink="true">https://NGDBZ.github.io/post/VUE3%20-gua-zai-%20%3D%20-zu-jian-cong-dai-ma-bian-cheng-zhen-shi-wang-ye-bing-chu-xian-zai-ping-mu-shang-de-na-yi-ke-%E3%80%82.html</guid><pubDate>Fri, 23 Jan 2026 08:26:06 +0000</pubDate></item><item><title>git中的commit和add</title><link>https://NGDBZ.github.io/post/git-zhong-de-commit-he-add.html</link><description>git add 的作用：把工作区的变更「移动」到暂存区，是连接工作区和版本库的必经步骤。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/git-zhong-de-commit-he-add.html</guid><pubDate>Fri, 23 Jan 2026 02:46:52 +0000</pubDate></item><item><title>git中的Commit和Sync</title><link>https://NGDBZ.github.io/post/git-zhong-de-Commit-he-Sync.html</link><description>点击sync changes 后&lt;img width='522' height='161' alt='Image' src='https://github.com/user-attachments/assets/53c019ce-8ba1-4248-92a6-2f8836b5a907' /&gt; 



在 VS Code 中，Commit 与 Sync 的区别是：

- **Commit**：只发生在你本地。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/git-zhong-de-Commit-he-Sync.html</guid><pubDate>Fri, 23 Jan 2026 01:47:27 +0000</pubDate></item><item><title>&lt;Person /&gt; 这种自闭合标签在Vue中比较流行</title><link>https://NGDBZ.github.io/post/-Person%20--%20-zhe-zhong-zi-bi-he-biao-qian-zai-Vue-zhong-bi-jiao-liu-xing.html</link><description>&lt;img width='1855' height='936' alt='Image' src='https://github.com/user-attachments/assets/1932625e-5a19-4b89-be08-66d9933869a7' /&gt;


`&lt;Person /&gt;` 确实是将原本的开始标签 `&lt;Person&gt;` 和结束标签 `&lt;/Person&gt;` 合并成了一个标签。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/-Person%20--%20-zhe-zhong-zi-bi-he-biao-qian-zai-Vue-zhong-bi-jiao-liu-xing.html</guid><pubDate>Thu, 22 Jan 2026 13:26:37 +0000</pubDate></item><item><title>字典解包天生绑定接收容器</title><link>https://NGDBZ.github.io/post/zi-dian-jie-bao-tian-sheng-bang-ding-jie-shou-rong-qi.html</link><description>你的直觉非常敏锐！你实际上触及到了 Python 设计哲学中一个非常核心的点：**“显式优于隐式”**。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/zi-dian-jie-bao-tian-sheng-bang-ding-jie-shou-rong-qi.html</guid><pubDate>Thu, 22 Jan 2026 06:11:48 +0000</pubDate></item><item><title>HTML和VUE的style</title><link>https://NGDBZ.github.io/post/HTML-he-VUE-de-style.html</link><description>如果你在一个 HTML 文件（比如 page1.html）里写了 &lt;style&gt;，它只会影响 page1.html 自己。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/HTML-he-VUE-de-style.html</guid><pubDate>Thu, 22 Jan 2026 03:56:10 +0000</pubDate></item><item><title>Docker和Anaconda的区别</title><link>https://NGDBZ.github.io/post/Docker-he-Anaconda-de-qu-bie.html</link><description>&lt;html&gt;
&lt;body&gt;
&lt;!--StartFragment--&gt;&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;p&gt;Docker 和 Anaconda 虽然都能实现“环境隔离”，但它们解决的问题层次、核心定位和适用场景有本质区别。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/Docker-he-Anaconda-de-qu-bie.html</guid><pubDate>Thu, 22 Jan 2026 02:42:40 +0000</pubDate></item><item><title>Vue笔记</title><link>https://NGDBZ.github.io/post/Vue-bi-ji.html</link><description>&lt;img width='773' height='406' alt='Image' src='https://github.com/user-attachments/assets/6eb53a50-5d0c-43ae-a662-96d63fad3242' /&gt;


components里面也是组件，但没有App.vue这个根组件厉害

&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;

`import { createApp } from 'vue';`


&lt;img width='455' height='271' alt='Image' src='https://github.com/user-attachments/assets/4ef52e04-ad5f-4c9e-bdd2-43f341391ad2' /&gt;
&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;&lt;br&gt;&amp;nbsp;


&gt; [!NOTE]
&gt;Vue2中必须这样写吗
是的，你的理解完全正确。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/Vue-bi-ji.html</guid><pubDate>Tue, 20 Jan 2026 04:01:37 +0000</pubDate></item><item><title>HTML的name属性</title><link>https://NGDBZ.github.io/post/HTML-de-name-shu-xing.html</link><description>&lt;html&gt;
&lt;body&gt;
&lt;!--StartFragment--&gt;&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;p&gt;在 HTML 中，&lt;code&gt;name&lt;/code&gt; 属性虽然看起来简单，但它的作用非常关键，主要充当**“数据通信的桥梁”**。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/HTML-de-name-shu-xing.html</guid><pubDate>Tue, 20 Jan 2026 01:46:17 +0000</pubDate></item><item><title>为什么JS不能像py一样，直接import别的模块后，直接用里面的函数就行，还需要export</title><link>https://NGDBZ.github.io/post/wei-shen-me-JS-bu-neng-xiang-py-yi-yang-%EF%BC%8C-zhi-jie-import-bie-de-mo-kuai-hou-%EF%BC%8C-zhi-jie-yong-li-mian-de-han-shu-jiu-xing-%EF%BC%8C-huan-xu-yao-export.html</link><description>这确实是一个让很多从 Python 转过来的开发者感到头疼的问题。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/wei-shen-me-JS-bu-neng-xiang-py-yi-yang-%EF%BC%8C-zhi-jie-import-bie-de-mo-kuai-hou-%EF%BC%8C-zhi-jie-yong-li-mian-de-han-shu-jiu-xing-%EF%BC%8C-huan-xu-yao-export.html</guid><pubDate>Mon, 19 Jan 2026 13:10:00 +0000</pubDate></item><item><title>SQL防注入</title><link>https://NGDBZ.github.io/post/SQL-fang-zhu-ru.html</link><description> 假设 card_key = 'ABC'; DROP TABLE card_keys; --'
```
sql = f'SELECT ... WHERE card_key = '{card_key}''
conn.execute(sql)
```
'

最终生成的 SQL 变成了：
`SELECT * FROM card_keys WHERE card_key = 'ABC'; DROP TABLE card_keys; --'
`
数据库会傻傻地执行两条命令：先查，再把表删了！


## 使用占位符
`conn.execute('SELECT ... WHERE card_key = ?', (card_key,))
`                                      
加逗号是为了被识别成元组
Python 会告诉数据库：“这是数据，不是代码，请严格按数据处理。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/SQL-fang-zhu-ru.html</guid><pubDate>Sat, 17 Jan 2026 12:55:02 +0000</pubDate></item><item><title>commit()</title><link>https://NGDBZ.github.io/post/commit%28%29.html</link><description>commit() 是数据库编程中的一个关键方法，用于永久保存对数据库所做的更改。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/commit%28%29.html</guid><pubDate>Sat, 17 Jan 2026 11:18:44 +0000</pubDate></item><item><title>Python推导式</title><link>https://NGDBZ.github.io/post/Python-tui-dao-shi.html</link><description># **列表推导式** 
快速创建一个列表，简洁了代码。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/Python-tui-dao-shi.html</guid><pubDate>Sat, 17 Jan 2026 06:25:00 +0000</pubDate></item><item><title>Python的split</title><link>https://NGDBZ.github.io/post/Python-de-split.html</link><description>&lt;img width='435' height='187' alt='Image' src='https://github.com/user-attachments/assets/2b393d8e-a2ed-45eb-80c2-463029b42203' /&gt;

```python
text = 'Hello    world Python'  # 注意中间有多个空格
words = text.split()
print(words)
# 输出: ['Hello', 'world', 'Python']



# 看到了吗？多余的空格被自动忽略了，非常智能。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/Python-de-split.html</guid><pubDate>Sat, 17 Jan 2026 04:40:48 +0000</pubDate></item><item><title>对象初始化时的self.xxx=xxx</title><link>https://NGDBZ.github.io/post/dui-xiang-chu-shi-hua-shi-de-self.xxx%3Dxxx.html</link><description>&lt;img width='908' height='681' alt='Image' src='https://github.com/user-attachments/assets/d6e83689-b639-4ad7-9f0c-8e9155632086' /&gt;
###如果不写这行代码，会有什么后果？
后果：card_key 只是一个函数内部的局部变量。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/dui-xiang-chu-shi-hua-shi-de-self.xxx%3Dxxx.html</guid><pubDate>Sat, 17 Jan 2026 03:55:14 +0000</pubDate></item><item><title>Python的Lambda</title><link>https://NGDBZ.github.io/post/Python-de-Lambda.html</link><description>&lt;img width='442' height='163' alt='Image' src='https://github.com/user-attachments/assets/f6bc25de-30a2-4811-a7d6-7a920906c858' /&gt;。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/Python-de-Lambda.html</guid><pubDate>Sat, 17 Jan 2026 03:24:36 +0000</pubDate></item><item><title>body，payload，form之间的关系</title><link>https://NGDBZ.github.io/post/body%EF%BC%8Cpayload%EF%BC%8Cform-zhi-jian-de-guan-xi.html</link><description>用户填写表单 → 表单数据被打包成 payload → payload 被放入 body 中 → HTTP 请求把 body 发给后端

&lt;img width='806' height='288' alt='Image' src='https://github.com/user-attachments/assets/8c6f6eb7-ab9b-4a1d-b201-3e728d7f6b0b' /&gt;

&lt;img width='1079' height='650' alt='Image' src='https://github.com/user-attachments/assets/dfd87655-c2e3-4056-a3c2-19e043afa535' /&gt;。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/body%EF%BC%8Cpayload%EF%BC%8Cform-zhi-jian-de-guan-xi.html</guid><pubDate>Sat, 17 Jan 2026 02:26:38 +0000</pubDate></item><item><title>Python的标准库json</title><link>https://NGDBZ.github.io/post/Python-de-biao-zhun-ku-json.html</link><description>不需要使用 pip 单独安装，直接通过 import json 就可以在代码中使用它。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/Python-de-biao-zhun-ku-json.html</guid><pubDate>Sat, 17 Jan 2026 02:00:48 +0000</pubDate></item><item><title>Python中的“等号”传递以及位置传递</title><link>https://NGDBZ.github.io/post/Python-zhong-de-%E2%80%9C-deng-hao-%E2%80%9D-chuan-di-yi-ji-wei-zhi-chuan-di.html</link><description>&lt;img width='1137' height='294' alt='Image' src='https://github.com/user-attachments/assets/1812e157-8ee9-4d8c-86d8-dd44b0627f34' /&gt;
&lt;html&gt;
&lt;body&gt;
&lt;!--StartFragment--&gt;&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;p&gt;结合上一个问题中提到的 &lt;code&gt;*&lt;/code&gt; 符号（强制关键字参数），你可能会好奇：&lt;strong&gt;为什么我们要费劲地写 &lt;code&gt;参数名=值&lt;/code&gt;，而不是直接传值呢？&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;简单来说，关键字传递（Keyword Arguments）是 Python 中一种通过参数名来传递值的方式。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/Python-zhong-de-%E2%80%9C-deng-hao-%E2%80%9D-chuan-di-yi-ji-wei-zhi-chuan-di.html</guid><pubDate>Sat, 17 Jan 2026 01:18:32 +0000</pubDate></item><item><title>CURL的含义</title><link>https://NGDBZ.github.io/post/CURL-de-han-yi.html</link><description>&lt;img width='477' height='284' alt='Image' src='https://github.com/user-attachments/assets/9d310eb0-77ec-4238-a7f6-3a96577936f8' /&gt;这些有什么区别
这些选项是将一个 HTTP 请求（通常是在浏览器开发者工具中捕获的）导出为不同编程语言或工具的等效命令格式，以便在其他环境中复现该请求。</description><guid isPermaLink="true">https://NGDBZ.github.io/post/CURL-de-han-yi.html</guid><pubDate>Fri, 16 Jan 2026 11:15:22 +0000</pubDate></item></channel></rss>