Altprocess kullanarak bir komut dosyasını çağırmam gereken bir django sitem var. Ben ASCII karakterleri kullanarak olduğumda altişlem çağrı çalışır ama utf-8 kodlanmış argümanları sorunu çalıştığınızda bir hata alıyorum: u'Wiadomo\u015b\u0107'
bir Postgres db geliyorpython altprocess ve unicode execv() arg 2 yalnızca dizeleri içermelidir
execv() arg 2 must contain only strings.
dize. Bu örnek, Lehçe kelimeleri kullanıyor. İngilizce kelimeleri kullanarak çalıştırdığımda hiç sorunum yok.
çağrı şuna benzer:
subprocess.Popen(['/usr/lib/p3web2/src/post_n_campaigns.py', '-c', u'bm01', '-1', u'Twoja', '-2', u'Wiadomo\u015b\u0107', '-3', u'', '-4', u'', '-5', u'', '-6', u'', '-m', u'pl', '-p', 'yes'])
Ben bu durumda dizeleri nasıl işleneceğini emin değilim. Tuhaf olan şey, python yorumlayıcısından geçtiğimde bunun iyi sonuç vermesi.
sayesinde ... Daha önce kodlanmış olduğunu düşündüm ... ders aldım. – deecodameeko