У меня синтаксическая ошибка в правильной строке для команды ввода - PullRequest
0 голосов
/ 09 мая 2020

[он автоматически определяет его как строку`

это ошибка

input_msg = input('enter message:-')
        ^
SyntaxError: invalid syntax`]

это мой код

import time
from cryptography.fernet import Fernet
from cryptography.hazmat.backends import default_backend
from cryptography.hazmat.primitives import hashes
from cryptography.hazmat.primitives.kdf.pbkdf2 import PBKDF2HMAC

password_provided = "password"  
password = password_provided.encode() 
salt = b'salt_' 
kdf = PBKDF2HMAC(
    algorithm=hashes.SHA256(),
    length=32,
    salt=salt,
    iterations=100000,
    backend=default_backend()
)

key = base64.urlsafe_b64encode(kdf.derive(password)

input_msg = input('enter message:-')

message = input_msg.encode()

time.sleep(15)

f = Fernet(key)

code = f.encrypt(message)

print(message)

я использую vs code и моя версия python - 3.7, я не могу использовать вводную забаву c, и она автоматически сообщает мне, что моя переменная является строкой, как на изображении выше

Ответы [ 3 ]

1 голос
/ 09 мая 2020

Похоже, вам не хватает закрывающей скобки в строке выше:

key = base64.urlsafe_b64encode(kdf.derive(password) # need ) here
0 голосов
/ 09 мая 2020

В этой строке: key = base64.urlsafe_b64encode(kdf.derive(password) вам нужно добавить еще ) в конце.

0 голосов
/ 09 мая 2020

В строке выше отсутствует скобка. Должно быть:

key = base64.urlsafe_b64encode (kdf.derive (пароль))

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...