С помощью subprocess.call () вы вводите команду в виде списка:
cmd1 = ['zint' '-o', '.\qr\datamatrix.png', '-b', '20', '--notext', '-d', 'data_to_encode_goes_here']
Обратите внимание, что в последней версии Python subprocess.run () является новым стандартом (Я не вижу, указана ваша версия).Он также принимает список в качестве команды, а не строку.
import os
import subprocess
out_dir = os.path.join(os.getcwd(), 'qr')
if not os.path.exists(out_dir):
os.makedirs(out_dir)
out_file = os.path.join(out_dir, 'datamatrix.png')
cmd1 = ['zint' '-o', out_file, '-b', '20', '--notext', '-d', '"data_to_encode_goes_here"']
rc = subprocess.call(cmd1)
Попробуйте что-то подобное