Seite 1 von 1

os.chmod -> modus probleme.

Verfasst: Sonntag 13. Juli 2008, 09:33
von cov
Hi leute ich hab mir ein kleines script zum ändern der benutzerrechte meiner Datein geschreiben. mein Problem ist jetzt, das ich den modus, den ich ja bei os.chmod als zweiten parameter eingebne muss, nicht .schreiben kann.
Ich habe also für den besitzer der Datei, für die benutzer seiner gruppe und für alle anderen jeweils eine variable, die füge ich am ende zusammen, so das eine zahl wie zb. 777 herauskommt.
Da aber der modus als eine okalzahl geschreiben werden muss, muss ich da noch ne 0 vor bekommen. und hier liegt mein Problem. wie bekomm ich eine null davor, denn z.b. bei 0+777 kommt ja wieder 777 raus.

hoffe ihr könnt mir helfen.

llg cov.

Verfasst: Sonntag 13. Juli 2008, 10:03
von sma
Wo ist dein Problem?

Code: Alles auswählen

>>> print 0777
511
>>> int(raw_input('? '), 8)
? 777
511

Verfasst: Sonntag 13. Juli 2008, 10:28
von cov
he danke. Mein problem war das ich nicht wusste das man mir int(777,8) eine oktal zahl ersellen kann, ich beschäftige mich mit python noch nicht so lange.
Aber hat super geklapt also danke.

Verfasst: Sonntag 13. Juli 2008, 11:13
von BlackJack
Du kannst mit `int()` keine Oktalzahl erstellen, sondern aus einer Zeichenkette in Oktaldarstellung eine ganze Zahl machen.

Verfasst: Sonntag 13. Juli 2008, 11:48
von noob1
BlackJack hat geschrieben:Du kannst mit `int()` keine Oktalzahl erstellen, sondern aus einer Zeichenkette in Oktaldarstellung eine ganze Zahl machen.
Ist eine Zahl in Oktaldarstellung etwa keine "ganze Zahl"? Und warum in Oktaldarstellung?

Code: Alles auswählen

>>> int("777", 8)
511
>>> int("0777", 8)
511
>>>

Verfasst: Sonntag 13. Juli 2008, 12:01
von audax
noob1 hat geschrieben: Ist eine Zahl in Oktaldarstellung etwa keine "ganze Zahl"?
Ne, nur eine Darstellung einer Zahl. Und dort liegt der Hund begraben...