Skip to content

Commit

Permalink
修改文档中的错误
Browse files Browse the repository at this point in the history
  • Loading branch information
sumingcheng committed Dec 10, 2024
1 parent 6c945fa commit 6a58d07
Show file tree
Hide file tree
Showing 11 changed files with 39 additions and 36 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -68,9 +68,10 @@ print(user)
当我将位置参数、默认参数、可变参数、关键字参数等组合使用时,会特别注意参数的定义顺序与调用方式。确保代码清晰易读的同时,我也会在函数调用中使用关键字参数来使代码更具有可读性。面对复杂情况,我会根据实际业务需求灵活调整参数传入的方式。

```python
def complex_func(a, b=10, *args, **kwargs):
def complex_func(a, b=10, /, *args, c=None, **kwargs):
print(f"a={a}, b={b}")
print(f"args={args}")
print(f"c={c}")
print(f"kwargs={kwargs}")

complex_func(1, 2, 3, 4, x=10, y=20)
Expand Down
14 changes: 7 additions & 7 deletions docs/Backend/Python/基础/130-异常处理机制.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,16 +40,16 @@ finally 块确保资源得到正确释放。

```python
def read_file_content(filename):
file = None
try:
file = open(filename, 'r')
content = file.read()
return content
with open(filename, 'r') as file:
content = file.read()
return content
except FileNotFoundError:
return "文件不存在"
finally:
if file:
file.close()
except PermissionError:
return "没有操作权限"
except Exception as error:
return f"操作失败{str(error)}"
```

## 自定义异常类
Expand Down
6 changes: 2 additions & 4 deletions docs/Backend/Python/基础/160-数据结构实现.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,15 +70,13 @@ import heapq
class PriorityQueue:
def __init__(self):
self.items = []
self.index = 0

def push(self, item, priority):
heapq.heappush(self.items, (-priority, self.index, item))
self.index += 1
heapq.heappush(self.items, (-priority, item))

def pop(self):
if self.items:
return heapq.heappop(self.items)[-1]
return heapq.heappop(self.items)[1]
raise IndexError("优先队列为空")

def peek(self):
Expand Down
2 changes: 1 addition & 1 deletion docs/Backend/Python/基础/180-正则表达式.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
import re

def validate_email(email):
pattern = r'^[\w\.-]+@[\w\.-]+\.\w+$'
pattern = r'^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$'
return bool(re.match(pattern, email))

def find_phone_numbers(text):
Expand Down
4 changes: 2 additions & 2 deletions docs/Backend/Redis/1.Redis-基础使用.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ Redis 的数据结构可辅助某些搜索功能,如前缀匹配和自动完

## 键值对数据库

Redis 被称为键值对数据库,因为其基本数据结构是根据“键”存储和检索“值”。这种模型与传统关系型数据库不同,后者使用表、行和列组织数据。
Redis 被称为"键值对数据库",因为其基本数据结构是根据"键"存储和检索"值"。这种模型与传统关系型数据库不同,后者使用表、行和列组织数据。

在 Redis 中:

Expand Down Expand Up @@ -112,7 +112,7 @@ Redis 的数据全部存储在内存中。如果数据集很大,Redis 可能

### 分片和集群

随着数据和流量增长,可能需要考虑分片或设置 Redis 集群。虽然 Redis 支持这些功能,设置和维护它们可能增加复杂性。
随着数据和流量增长,可能需要考虑分片或设置 Redis 集群。虽然 Redis 支持这些功能,设置和维护它们可能增加复杂性。此外,在进行集群扩容或缩容时,需要考虑数据迁移的性能影响和数据一致性问题。

### 数据模型限制

Expand Down
11 changes: 8 additions & 3 deletions docs/Backend/Redis/30.Redis集群与分片.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,14 @@
# 创建集群示例
redis-cli --cluster create 192.168.0.10:7000 192.168.0.11:7000 192.168.0.12:7000 192.168.0.13:7000 192.168.0.14:7000 192.168.0.15:7000 --cluster-replicas 1

# 检查集群状态
redis-cli -c -h 192.168.0.10 -p 7000 cluster info
redis-cli -c -h 192.168.0.10 -p 7000 cluster nodes
# 检查集群配置
redis-cli --cluster check 192.168.0.10:7000

# 添加新节点
redis-cli --cluster add-node 192.168.0.16:7000 192.168.0.10:7000

# 重新分片
redis-cli --cluster reshard 192.168.0.10:7000
```

## 数据迁移与扩容实践
Expand Down
2 changes: 2 additions & 0 deletions docs/Backend/Redis/40.Redis性能优化与运维.md
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,8 @@ EVAL "return redis.call('SET', KEYS[1], ARGV[1])" 1 mykey "hello"
- **外部监控工具**
- **Redis-Stat**:一个简单的 Redis 性能监控工具,提供命令执行时间、内存使用等信息。
- **Prometheus + Redis Exporter**:使用 Prometheus 进行 Redis 的监控,支持定制化告警。
- **Grafana**:结合 Prometheus,提供可视化的监控面板,可以实时查看 Redis 的性能指标。
- **Redis Commander**:Web 界面的 Redis 管理工具,可以查看和管理 Redis 数据。

### 2. 日志与故障排查

Expand Down
2 changes: 1 addition & 1 deletion docs/Backend/Regular/10-正则表达式基础.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ console.log(str); // 输出: 正\则表\达式

## 常用转义字符

### \n(换行)
### \n(换行)、\r(回车)、\t(制表符)、\v(垂直制表符)、\f(换页符)

`\n`表示换行。注意控制台和 HTML 页面中的显示效果不同,因为控制台是一个编辑系统,而 HTML 页面是编译后的文档。

Expand Down
4 changes: 2 additions & 2 deletions docs/Backend/Regular/20-正则表达式创建方式.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@ let str = `Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eius
```javascript
let str = 'admin';
let pattern = 'n';
console.log(eval(`/${pattern}/.test(str)`));
console.log(new RegExp(pattern).test(str));
```

在这个例子中,我们使用了`eval`函数动态创建了一个正则表达式`/n/`,并用它来测试字符串`'admin'`是否包含字母`'n'`
在这个例子中,我们使用了`new RegExp(pattern).test(str)`来测试字符串`'admin'`是否包含字母`'n'`

## 构造函数创建

Expand Down
2 changes: 1 addition & 1 deletion docs/Backend/Regular/30-正则表达式量词与方法.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ console.log(reg.exec(str)); // 输出: null

在这个例子中,第一次调用`exec`方法时,找到了第一个匹配`'123'`,并返回了匹配结果数组。第二次调用`exec`方法时,从上一次匹配的位置继续搜索,找到了第二个匹配`'456'`。第三次调用`exec`方法时,已经搜索到字符串末尾,没有找到匹配,因此返回`null`

需要注意的是,在使用`g`标志进行全局匹配时,每次调用`exec`方法都会从上一次匹配的位置继续搜索。可以通过正则表达式对象的`lastIndex`属性来查看或修改下一次匹配的起始位置
需要注意的是,如果正则表达式带有`g`标志,`exec`方法会记住上次匹配的位置,下次调用会从该位置继续查找。如果需要重新从头开始匹配,可以将`lastIndex`属性设置为 0

### match 方法

Expand Down
25 changes: 11 additions & 14 deletions docs/Backend/Regular/40-正则表达式进阶技巧.md
Original file line number Diff line number Diff line change
Expand Up @@ -188,21 +188,18 @@ console.log(str1); // abc

## 给数字添加千位分隔符

从前往后匹配:

```javascript
var str = '1000000000';
var str1 = str.replace(/(\d{3}\B)/g, '$1,');
console.log(str1); // 100,000,000,0
```

全部匹配:

```javascript
var str = '1000000000';
var reg = /(?=(\B)(\d{3})+$)/g;
var str1 = str.replace(reg, ',');
console.log(str1); // 1,000,000,000
// 处理整数和小数
function formatNumber(num) {
return num
.toString()
.replace(/\B(?=(\d{3})+(?!\d))/g, ',')
.replace(/^(-?\d+)(\.\d+)?$/, function (_, int, dec) {
return int.replace(/\B(?=(\d{3})+(?!\d))/g, ',') + (dec || '');
});
}

console.log(formatNumber(1234567.89)); // 1,234,567.89
```

## 双大括号替换
Expand Down

0 comments on commit 6a58d07

Please sign in to comment.