Если вы хотите преобразовать строковый объект в байтовый объект, вы должны что-то сделать
как это
st = "Roushan" # a string object
byte_object = st.encode('utf-8')
здесь byte_object - фактический объект, а utf-8 - схема кодирования.
Есть много схем кодирования
ASCII
UTF-16
Подробнее о типах кодировки Кодировка
После этого просто выясните, какой аргумент необходимо было передать как байт вместо str, и измените этот объект на байт.
Поскольку в моей системе не установлен модуль nk, я оставляю это вам
РЕДАКТИРОВАТЬ:
open a fresh new empty python file
напишите следующий код
ids = [1,2,3,4,5]
list_ = ['A','B','X','Y','Z','W']
df = [None for i in ids]
print(type(df))
откройте терминал и выполните
python2.7 mycode.py
python3.7 mycode.py
в случае 1 вы получаете
в случае 2
и, пожалуйста, опубликуйте сообщение об ошибке. Я считаю, что ошибка возникает в другой части кода, так как этот в порядке