Hallo erstmal:)
Wie kann man denn eine Textdatei erstellen mit Python?
Ich kenne nur os.system("edit datei.txt")
Ich möchte aber eine Datei erstellen und bestimmte Werte in die Datei schreiben.
Mit der obigen Methode komme ich nicht zurecht weil man erst über den editor abspeichern muss...
Vielen Dank
Textdatei erstellen mit Python?
Code: Alles auswählen
f = file('spam.txt', 'w')
f.write('tolle erste Zeile\n')
f.write('tolle zweite Zeile\n')
print >>f, 'tolle dritte Zeile'
f.close()
ich machs mal kurz:im Interpreter eingeben und aufmerksam lesen, da steht das am besten erklärt.
notfalls das hier durchlesen und dann irgendwann hier landen.
Code: Alles auswählen
help(open)
notfalls das hier durchlesen und dann irgendwann hier landen.
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo knuffi123!knuffi123 hat geschrieben:Wie kann man denn eine Textdatei erstellen mit Python?
http://www.python-forum.de/topic-6157.html
mfg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Das funktioniert spätestens dann nicht, wenn man Linux benutzt, wo es kein ``edit`` gibt.knuffi123 hat geschrieben:Ich kenne nur os.system("edit datei.txt")
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
OK vielen dank.
Ich würde gerne dieser Datei (unter Windows) bestimmte Zugriffsrechte geben. (Nur lesen in dem Fall)
Ich kenne hierfür os.chmod(path, mode)
Könnte mir jemand anhand eines Beispiels zeigen wie ich das korrekt anwende?
Vielen Dank
Ich würde gerne dieser Datei (unter Windows) bestimmte Zugriffsrechte geben. (Nur lesen in dem Fall)
Ich kenne hierfür os.chmod(path, mode)
Könnte mir jemand anhand eines Beispiels zeigen wie ich das korrekt anwende?
Vielen Dank
- nkoehring
- User
- Beiträge: 543
- Registriert: Mittwoch 7. Februar 2007, 17:37
- Wohnort: naehe Halle/Saale
- Kontaktdaten:
Hi knuffi123...
um das zu tun, musst du wissen, wie unter Windows Dateirechte vergibst. Ich persoenlich musste dazu gerade auch Google (bzw Scroogle) fragen.
Ich habe ein Beispiel gefunden, dass die Win32 extensions (zB bei ActivePython dabei) verwendet:
um das zu tun, musst du wissen, wie unter Windows Dateirechte vergibst. Ich persoenlich musste dazu gerade auch Google (bzw Scroogle) fragen.
Ich habe ein Beispiel gefunden, dass die Win32 extensions (zB bei ActivePython dabei) verwendet:
Code: Alles auswählen
import win32api, win32con
def hide_file( fn ):
x = win32api.GetFileAttributes( fn )
x |= win32con.FILE_ATTRIBUTE_READONLY
win32api.SetFileAttributes( fn, x )
def unhide_file( fn ):
x = win32api.GetFileAttributes( fn )
x &= ~win32con.FILE_ATTRIBUTE_READONLY
win32api.SetFileAttributes( fn, x )
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo knuffi123!knuffi123 hat geschrieben:Ich kenne hierfür os.chmod(path, mode)
Könnte mir jemand anhand eines Beispiels zeigen wie ich das korrekt anwende?
Code: Alles auswählen
import os
import stat
os.chmod(r"J:\Ablage\aaa.txt", stat.S_IREAD)
os.chmod(r"J:\Ablage\aaa.txt", stat.S_IWRITE)
mfg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo knuffi123!knuffi123 hat geschrieben:Wenn ich der Datei die Leserechte nehmen möchte, dann wird das mit chmod nicht funktionieren.
Hier wäre die Methode von nkoehring anzuwenden, denke ich?
Weder, noch! Das ReadOnly-Flag ist ein Dateiflag. Aber bei einer Leseberechtigung handelt es sich um ein Benutzer-Zugriffsrecht. Diese Berechtigungen nennen sich ACLs und lassen sich am Einfachsten mit dem Kommandozeilentool **Cacls** setzen.
mfg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Danke:)gerold hat geschrieben:Hallo knuffi123!knuffi123 hat geschrieben:Wenn ich der Datei die Leserechte nehmen möchte, dann wird das mit chmod nicht funktionieren.
Hier wäre die Methode von nkoehring anzuwenden, denke ich?
Weder, noch! Das ReadOnly-Flag ist ein Dateiflag. Aber bei einer Leseberechtigung handelt es sich um ein Benutzer-Zugriffsrecht. Diese Berechtigungen nennen sich ACLs und lassen sich am Einfachsten mit dem Kommandozeilentool **Cacls** setzen.
mfg
Gerold
Nur muss ich mit cacls auch den Benutzer angeben für den ich die Rechte ändern will. Gibt es eine Möglichkeit das für alle Benutzer anzuwenden?
Vor allem wenn mein Programm auf einem anderen Rechner ausgeführt wird?
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo knuffi123!knuffi123 hat geschrieben:Gibt es eine Möglichkeit das für alle Benutzer anzuwenden?
Unter einem deutschen Windows XP gibt es die Gruppen "Administratoren" und "System". Diesen Gruppen sollte man normalerweise Vollzugriff (/F) geben -- muss aber nicht unbedingt sein. Als Mitglied der Gruppe "Administratoren" kann man sich sowiso Zugang zu jeder Datei besorgen, indem man deren Besitz übernimmt.
Unter einem deutschen Windows XP gibt es die Gruppe "Benutzer". Zu dieser Gruppe gehört normalerweise jeder Benutzer des Computers. Dieser Gruppe kannst du das benötigte Recht geben.
Vorsicht: Unter einem englischen Windows XP heißen die Gruppen anders. Und mit Windows Vista habe ich noch nichts gemacht.
mfg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Hallo Gerold,gerold hat geschrieben:Hallo knuffi123!knuffi123 hat geschrieben:Gibt es eine Möglichkeit das für alle Benutzer anzuwenden?
Unter einem deutschen Windows XP gibt es die Gruppen "Administratoren" und "System". Diesen Gruppen sollte man normalerweise Vollzugriff (/F) geben -- muss aber nicht unbedingt sein. Als Mitglied der Gruppe "Administratoren" kann man sich sowiso Zugang zu jeder Datei besorgen, indem man deren Besitz übernimmt.
Unter einem deutschen Windows XP gibt es die Gruppe "Benutzer". Zu dieser Gruppe gehört normalerweise jeder Benutzer des Computers. Dieser Gruppe kannst du das benötigte Recht geben.
Vorsicht: Unter einem englischen Windows XP heißen die Gruppen anders. Und mit Windows Vista habe ich noch nichts gemacht.
mfg
Gerold
wie kann ich denn die Rechte einer ganzen Benutzergruppe manipulieren mit cacls?
Ich kenne nur diese Syntax: cacls test.txt /d knuffi123
So nehme ich dem Benutzer knuff123 alle Rechte an der text.txt Datei.
Wie mache ich das mit Gruppen?
Danke für die Hilfe:)
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo knuffi123!knuffi123 hat geschrieben:wie kann ich denn die Rechte einer ganzen Benutzergruppe manipulieren mit cacls?
Ich kenne nur diese Syntax: cacls test.txt /d knuffi123
Genau gleich.
Schau dir zuerst mal die Rechte an:
Code: Alles auswählen
cacls test.txt
So nimmst du der Gruppe "Jeder" alle Rechte:
Code: Alles auswählen
cacls test.txt /d Jeder
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.