2 つのファイルを読み取り、それらをセットに変換してから、一方のセットから他方のセットを減算するコードがあります。ファイルの代わりに「a」に文字列変数 (installedPackages) を使用したいと考えています。「c」の変数にも書き込みたいと思います。
a = open("/home/user/packages1.txt")
b = open("/home/user/packages.txt")
c = open("/home/user/unique.txt", "w")
for line in set(a) - set(b):
c.write(line)
a.close()
b.close()
c.close()
私は次のことを試しましたが、うまくいきません:
for line in set(installedPackages) - set(b):
StringIO を使用しようとしましたが、不適切に使用していると思います。
最後に、私が作成した方法は次のinstalledPackages
とおりです。
stdout, stderr = p.communicate()
installedPackages = re.sub('\n$', '', re.sub('install$', '', re.sub('\t', '', stdout), 0,re.MULTILINE))
packages.txt のサンプル:
humanity-icon-theme
hunspell-en-us
hwdata
hyphen-en-us
ibus
ibus-gtk
ibus-gtk3
ibus-pinyin
ibus-pinyin-db-android
ibus-table