2010-01-12 10 views
6

का उपयोग कर gnome कॉन्फ़िगरेशन जानकारी तक पहुंच पाइथन का उपयोग कर जीनोम कॉन्फ़िगरेशन जानकारी (यानी ~/.gconf) तक पहुंचने का एक मानक तरीका है?पायथन

अद्यतन: कृपया एक छोटा उदाहरण प्रदान करें।

उत्तर

10

अजगर GConf भी तरह अजगर-gconf और/या अपने distros पैकेज रेपो में सूक्ति-अजगर-gconf संकुल की जाँच:

/usr/share/doc/अजगर-gconf/उदाहरण/

या उदाहरण के लिए http://svn.gnome.org/viewvc/gnome-python/trunk/examples/gconf/ पर SVN ब्राउज़ करें।

फेडोरा 12 (मेरा डिस्ट्रो) पर इसे gnome-python2-gconf-2.28.0-1.fc12.x86_64.rpm कहा जाता है, लेकिन यह एक सामान्य gnome-python2 पैकेज में हो सकता है।

अजगर में GConf कुंजी संपादन (पृष्ठभूमि वॉलपेपर) का एक उदाहरण:

#! /usr/bin/python 

import gtk 
import gtk.glade 
import gconf 

class GConfExample: 
    def __init__(self): 
     self.client = gconf.client_get_default() 

    def get_key(self, key): 
     return client.get_string(key) 

    def set_key(self, key, val): 
     client.set_string(key, str(val)) 

मिले http://therning.org/magnus/archives/57, और मैं जीटीके सामान बाहर छंटनी की। एपीआई का उपयोग कर के बारे में

mygconf['/path/to/key']; 

इसके अलावा कुछ अच्छी जानकारी here: बेशक, इस उदाहरण के लिए मैप करने के लिए कुछ अच्छी GetItem और setitem उपयोग होगा। बेशक, मेरा उदाहरण खराब है, लेकिन एपीआई की सादगी को दर्शाता है। यहाँ और अधिक तरीके हैं:

foo = self.gconf_client.get_string("/path/to/my/config/data/foo") 
bar = self.gconf_client.get_int("/path/to/my/config/data/bar") 
baz = self.gconf_client.get_bool("/path/to/my/config/data/baz") 

और प्रत्येक get_* ज्यादातर मामलों में एक समान सेटर set_* है।

+0

पुराना उत्तर, आपके द्वारा दिए गए लिंक काम नहीं करते हैं और उदाहरण अब कम से कम नहीं हैं/usr/share/doc/python/conf में कम से कम नहीं हैं। – schwiz