Я хочу иметь список программного обеспечения, установленного в моей системе, с помощью python. Код выглядит следующим образом:Как быстро получить список всех программ, установленных с помощью python?
import wmi
w = wmi.WMI()
for p in w.Win32_Product():
print r"\newcommand*{\Title}", "{" + p.Version +"}"
print r"\newcommand*{\Title}", "{" + p.Vendor +"}"
print r"\newcommand*{\Title}", "{" + p.Caption +"}"
print("\hline")
Теперь, когда я исполняю его я получил ошибку между его исполнения, как:
TypeError: cannot concatenate 'str' and 'NoneType' objects
Так на сети я искал и получил, что такая ошибка, когда вы пытаясь объединить строку с чем-то, что есть None. поэтому в моем коде я сделал следующее изменение, чтобы иметь дело с этим:
import wmi
w = wmi.WMI()
print "hello"
for p in w.Win32_Product():
print r"\newcommand*{\Title}", "{" + p.Version +"}"
print r"\newcommand*{\Title}", "{" + p.Vendor +"}"
if p.Caption == "NoneType":
pass
else:
print r"\newcommand*{\Title}", "{" + p.Caption +"}"
print("\hline")
Но все же он показывает ту же ошибку. Как разрешить такую ошибку? Кроме того, я хотел знать, есть ли другой способ иметь список установленного программного обеспечения, быстро доступный со мной, потому что мой код занимает очень много времени, чтобы список был доступен.
Является ли этот выход LaTeX? Зачем переопределять команду '\ Title' в каждой строке? Почему бы не использовать 'print r '\ Title {" + p.XXX + "}" '? –