2016-04-20 8 views
-1
#!/usr.byn/python3 

import struct 

class Fat: 
def __init__(self, fat): 
self._fat 

    def entryValue(self, cluster): 
    value = struct.unpackf=t('I', fat[cluster*4:cluster*4+4])[0] 
    return value 

    def isAllocated(self, cluster): 
    return self.entryValue(cluster)!=0 

    def nextCluster(self, cluster): 
     if (self.entryValue(cluster)==0 or 
     self.entryValue(cluster)==0x0fffffff): 
     return None 
      else: 
     return self.entryValue(cluster) 

    def clusterChain(self,cluster): 
    list1 =[] 
    while isAllocated: 
    for item in isAllocated: 
    continue 
    list1.append 
    value = 0 




''' make empty list, if cluster is allocated append it to list 
if not allocated start at new cluster, return list 
make do while loop''' 

def main(): 
with open('/home/louis/Downloads/fat-only.dd', 'rb') as f: 
fat=f.read() 
fat1=Fat(fat) 

Da ich immer noch Python lerne, habe ich immer noch einige Probleme beim Schreiben von Code und jede Hilfe würde sehr geschätzt werden. Wie in dem Kommentar in meiner dritten Methode erwähnt, muss ich prüfen, ob der Cluster zugewiesen ist oder nicht, und wenn dies der Fall ist, wird er zur Liste hinzugefügt, und wenn nicht, geht er einfach zum nächsten Cluster. Ich bin nur sehr verwirrt darüber, wie ich fortfahren soll oder was ich bei der dritten Methode ändern soll. Ich weiß, dass zumindest meine ersten beiden aus einer früheren Hilfe, die ich suchte, gut sind.Methode, die Probleme anruft

+4

Sie sollten den Titel ändern, um nicht hier Downvoted zu bekommen, auch Ihren Code nicht eingerückt ist. – Dodekeract

+0

Denken Sie daran, dass im Python-Block von Code durch seine Ident-Ebene definiert sind, im Gegensatz zu anderen Lengujes, wo andere Marker wie '{' '' '' '' '' ' – Copperfield

+0

gut verwenden, das ist das Problem, wenn ich kopierte und eingefügt von einem e- Mail, arbeitete daran auf einem anderen Laptop so per E-Mail an mich selbst und kopierte es hier, die Einrückungsebene wurde durcheinander gebracht. Ich habe gedacht, dass ich eingegriffen habe, wenn ich es gepostet habe, danke, dass ich darauf hingewiesen habe. –

Antwort

0

Nur ein paar Beobachtungen:

class Fat: 
    def __init__(self, fat): 
    self._fat # <------------------- this should be given a value 

def clusterChain(self,cluster): 
    list1 =[] 
    while isAllocated: # <---------- this doesn't actually call the function 
     for item in isAllocated: 
      continue 
     list1.append # <------------ this does nothing 
    value = 0 # <------------------- this looks undefined 
+0

ok danke für das feedback, für die beobachtungen, die du hervorgebracht hast, werde ich versuchen zu sagen, was ich versucht habe zu tun. Für den ersten habe ich keine Ahnung, welchen Wert ich hinzufügen soll. Für die zweite in der dritten Methode versuche ich eine for while-Schleife zu schreiben. Mit dem dritten in der list1.append, wenn es einen Cluster findet, der zugewiesen wird, soll er zur Liste hinzugefügt werden, und der vierte ist immer noch undefiniert. Ich zeichne gerade eine große Lücke darüber, wie man die dritte Methode richtig repariert. –

Verwandte Themen