pyffx版本为0.3.0 import pyffx # 定义手机号的格式 format_str = "#####{}#{}####" # 定义FPE算法的密钥和分组大小 key = b"my-secret-key" num_rounds = 10 block_size = 4 # 创建FFX对象并加密手机号 ffx = pyffx.String(key, alphabet='0123456789', length=len(format_str), rounds=num_rounds) encrypted_phone = ffx.encrypt(format_str.format('138', '0010', '1234'), block_size=block_size) # 输出加密后的手机号 print("加密后的手机号:", encrypted_phone)报错__init__() got an unexpected keyword argument 'rounds'
时间: 2024-03-06 10:47:10 浏览: 164
根据报错信息,`pyffx.String()` 函数没有名为 "rounds" 的参数。你可能使用了旧版本的 `pyffx` 库。可以尝试更新到最新版本,或者使用以下方式来创建 FFX 对象并加密手机号:
```python
ffx = pyffx.String(key, alphabet='0123456789', length=len(format_str))
encrypted_phone = ffx.encrypt(format_str.format('138', '0010', '1234'), algorithm='ff1', radix=10)
```
这里使用了 `algorithm='ff1'` 和 `radix=10` 来指定算法和基数。你可以根据需要修改这些参数。
相关问题
conda install pytorch==1.1.0 torchvision==0.3.0 cudatoolkit=10.0 -c pytorch变成pip命令
这个操作可以使用以下的pip命令来实现:
```bash
pip install torch==1.1.0 torchvision==0.3.0 -f https://download.pytorch.org/whl/cu100/stable
```
需要注意的是,这个命令中的`cu100`对应的是CUDA的版本号,如果你使用的是其他版本的CUDA,请修改相应的版本号。
File "/root/miniconda3/lib/python3.8/site-packages/yolox-0.3.0-py3.8-linux-x86_64.egg/yolox/models/attention.py", line 13, in __init__ self.mish = silu() # 可用自行选择激活函数 │ └ <function silu at 0x7f1babc58f70> └ CAM( (conv_1x1): Conv2d(512, 16, kernel_size=(1, 1), stride=(1, 1), bias=False) ) TypeError: silu() missing 1 required positional argument: 'input'
这个错误是因为 silu() 函数需要一个参数,但是在你的代码中没有传递参数。silu() 函数也称作 Swish 激活函数,可以用 torch.nn.functional.silu() 或者 torch.nn.SiLU() 的方式调用。你可以修改代码中这一行:
```python
self.mish = silu()
```
为:
```python
self.mish = torch.nn.SiLU()
```
或者:
```python
self.mish = torch.nn.functional.silu
```
这样就可以解决这个问题了。
阅读全文