secret_token, expire, _time = token_info.split('|') ValueError: too many values to unpack (expected 3)
时间: 2023-07-02 09:14:14 浏览: 158
这个错误通常是由于 `token_info` 这个字符串中包含了太多的分隔符导致的。根据你提供的代码,`token_info` 字符串应该包含三个用竖线分隔的值,但实际上可能不是这样。
你可以尝试打印出 `token_info` 的值来查看它的具体内容,然后检查它是否符合你的预期。另外,你也可以尝试使用 `split` 函数的第二个参数来限制分割的次数,例如:
```
secret_token, expire, _time, extra = token_info.split('|', 3)
```
这样,如果 `token_info` 中包含多余的分隔符,它们会被放在 `extra` 变量中,而不会导致解包出错。不过,在使用这种方法之前,你需要确定 `extra` 变量中包含的内容对你的代码是否有影响。
相关问题
Traceback (most recent call last): File "/Users/lihui/python/git_hub/test_hub/new_dj/dj_tools/yiwugou/script/time_task.py", line 85, in <module> ips = get_ip() File "/Users/lihui/python/git_hub/test_hub/new_dj/dj_tools/yiwugou/script/time_task.py", line 78, in get_ip ips = client.get_dps(1, format='json') File "/Users/lihui/python/git_hub/test_hub/new_dj/dj_tools/venv/lib/python3.9/site-packages/kdl/client.py", line 149, in get_dps params = self._get_params(endpoint, num=num, sign_type=sign_type, **kwargs) File "/Users/lihui/python/git_hub/test_hub/new_dj/dj_tools/venv/lib/python3.9/site-packages/kdl/client.py", line 387, in _get_params secret_token = self.get_secret_token() File "/Users/lihui/python/git_hub/test_hub/new_dj/dj_tools/venv/lib/python3.9/site-packages/kdl/client.py", line 360, in get_secret_token secret_token = self._read_secret_token() File "/Users/lihui/python/git_hub/test_hub/new_dj/dj_tools/venv/lib/python3.9/site-packages/kdl/client.py", line 351, in _read_secret_token secret_token, expire, _time = token_info.split('|') ValueError: too many values to unpack (expected 3)
这个错误和你之前提到的错误很相似,也是因为 `token_info` 字符串中包含了太多的分隔符导致的。根据错误信息,你的代码在调用 `split()` 函数时期望返回三个值,但实际上返回的值数量超过了三个。
你可以尝试打印 `token_info` 的值来查看它的具体内容,确认它是否符合你的预期。如果 `token_info` 中确实包含了太多的分隔符,你可以考虑使用 `split()` 函数的第二个参数来限制分割的次数,例如:
```
secret_token, expire, _time = token_info.split('|', 2)
```
这样,`split()` 函数最多只会分割出两个子串,即使 `token_info` 中包含了多余的分隔符,也不会导致解包出错。不过,在使用这种方法之前,你需要确定 `token_info` 的具体格式,并且确认这种做法对你的代码是否有影响。
阅读全文