Seite 2 von 2
Verfasst: Samstag 5. Mai 2007, 21:18
von Leonidas
Schreib das mal in Zeile 22 (die Frage warum jede zweite Zeile leer ist verkneif ich mir):
Code: Alles auswählen
import sys
found = []
for directory in sys.path:
full_path = os.path.join(directory, 'configobj.py')
if os.path.exists(full_path):
found.append(full_path)
print found
print sys.version_info
print sys.version
Poste dann bitte die Ausgaben.
Ist ``configobj.py`` wirklich eine Python-Datei? Wo du grad dabei bist, paste doch auch gleich den Inhalt von ``configobj.py``.
Verfasst: Sonntag 6. Mai 2007, 11:15
von Blauer Fasan
Es sind Leerzeilen mit dabei, um die Übersicht zu behalten.
Ich frage mich warum ich deinen Code genau in Zeile 22 schreiben soll, bei mir im Programm ist das nach der eigentlichen Fehlerquelle und kommt so nicht zur Ausgabe, deswegen habe ich es nach
eingefügt.
Dann ist das hier bei rausgekommen:
Code: Alles auswählen
['/usr/local/lib/python2.4/site-packages/configobj.py', '/usr/lib/python2.4/site-packages/configobj.py']
(2, 4, 3, 'final', 0)
2.4.3 (#2, Oct 6 2006, 07:52:30)
[GCC 4.0.3 (Ubuntu 4.0.3-1ubuntu5)]
Traceback (most recent call last):
File "SnakeLog_GUI.py", line 23, in ?
from configobj import ConfigObj
ImportError: No module named configobj
>Exit code: 0
EDIT: Das, was ich gepasted habe, stimmt von den Zeilen her nicht mit dem Programm überein, welches ich habe, dort müssen irgendwie Whitespaces dazwischen gekommen zu sein. Muss beim Kopieren passiert sein... Das Programm selbst hat nämlich bei mir im Editor nur 230 Zeilen und nicht 400 und ein paar zerdrückte.
Verfasst: Sonntag 6. Mai 2007, 11:49
von Leonidas
Blauer Fasan hat geschrieben:Es sind Leerzeilen mit dabei, um die Übersicht zu behalten.
Das was du gepastet hast ist voller Leerzeichen. Von Übersicht kann man da nicht sprechen.
Blauer Fasan hat geschrieben:Ich frage mich warum ich deinen Code genau in Zeile 22 schreiben soll, bei mir im Programm ist das nach der eigentlichen Fehlerquelle und kommt so nicht zur Ausgabe
Ich habe Zeile 22 angegeben, weil es die Richtige Position ist in dem ist was zu gepastet hast. Wenn du das richtige gepastet hättest, dann würde die Zeilennummer stimmen.
Blauer Fasan hat geschrieben:Dann ist das hier bei rausgekommen:
Sieht ok aus. Poste die Ausgabe von ``file configobj.py`` und paste (wie ich dich schon gebeten habe) ``configobj.py`` nach dpaste. Diesmal aber ohne die überflüssigen Leerzeilen, ok?
Verfasst: Sonntag 6. Mai 2007, 12:12
von Blauer Fasan
configobj.py:
http://dpaste.com/hold/9720/
Ich habe alles aus der
Datei SnakeLog_GUI.py markiert und bei dpaste eingefügt, also das richtige gepasted. Ich weiß nicth wie die Leerzeichen da reinkommen.
Was meinst du genau mit der Ausgabe von file configobj.py ? Entschuldige, dass ich so ne dumme Frage stelle...
Einfach dort eingeben, wo die Ausgabe vom Editor steht?
Verfasst: Sonntag 6. Mai 2007, 12:32
von Leonidas
Hmm, das sieht eigentlich ok aus.
Blauer Fasan hat geschrieben:Was meinst du genau mit der Ausgabe von file configobj.py ? Entschuldige, dass ich so ne dumme Frage stelle...
Einfach dort eingeben, wo die Ausgabe vom Editor steht?
Nein, das musst du in die Shell eingeben. Analog zu dem:
Code: Alles auswählen
leonidas@metodij:~$ file BeautifulSoup.py
BeautifulSoup.py: a python script text executable
Verfasst: Sonntag 6. Mai 2007, 12:41
von Blauer Fasan
mjunge@mjunge-work:~/Desktop$ file configobj.py
configobj.py: ASCII English text
Verfasst: Sonntag 6. Mai 2007, 12:45
von Leonidas
Blauer Fasan hat geschrieben:mjunge@mjunge-work:~/Desktop$ file configobj.py
configobj.py: ASCII English text
Nein, ich meine schon die Kopie die in ``site-packages`` liegt.
Verfasst: Sonntag 6. Mai 2007, 13:14
von Blauer Fasan
Code: Alles auswählen
root@mjunge-work:/usr/lib/python2.4/site-packages# file configobj.py
configobj.py: ASCII English text
das war als root und jetzt nochmal als normaler Benutzer, mit dem ich normalerweise angemeldet bin:
Code: Alles auswählen
mjunge@mjunge-work:/usr/lib/python2.4/site-packages$ file configobj.py
configobj.py: writable, regular file, no read permission
Verfasst: Sonntag 6. Mai 2007, 13:24
von lunar
Blauer Fasan hat geschrieben:Code: Alles auswählen
root@mjunge-work:/usr/lib/python2.4/site-packages# file configobj.py
configobj.py: ASCII English text
das war als root und jetzt nochmal als normaler Benutzer, mit dem ich normalerweise angemeldet bin:
Code: Alles auswählen
mjunge@mjunge-work:/usr/lib/python2.4/site-packages$ file configobj.py
configobj.py: writable, regular file, no read permission
Tja, da liegt der Hacken: Die Datei ist für normale Nutzer nicht lesbar, kann deswegen natürlich auch nicht importiert werden, wenn Python mit Nutzerrechten läuft. Korrigiere die Rechte der Datei, indem du die Schreibberechtigung entfernst und stattdessen Leserechte setzt. Genaueres verrät dir "man chmod".