返回提交历史
Modified
docs/misc/bvid_desc.md
+2
-2
XFEstudio/bilibili-API-collect
docs/misc/bvid_desc.md: 使用整数除法代替浮点数除法
bv号av号转换算法本质上是一种修改过的 base58 运算,参与运算的类型都是 整数类型,所以不应该使用浮点数除法 /= 而应该使用整数除法 //= 这也修复了 mypy 的类型不匹配报错,tmp 变量被推断为整数,而 `tmp /= BASE` 相当于 `tmp = tmp / BASE`,将浮点数赋值给整数,类型不匹配
3387e54
代码差异
1 个文件
+2
-2
@@ -167,8 +167,8 @@ def av2bv(aid: int) -> str:
167
167
bvid = [""] * 9
168
168
tmp = (MAX_AID | aid) ^ XOR_CODE
169
169
for i in range(CODE_LEN):
170
bvid[ENCODE_MAP[i]] = ALPHABET[int(tmp % BASE)]
171
tmp /= BASE
170
bvid[ENCODE_MAP[i]] = ALPHABET[tmp % BASE]
171
tmp //= BASE
172
172
return PREFIX + "".join(bvid)
173
173
174
174
def bv2av(bvid: str) -> int: