Användarprofil

Uppgifter
Användarnamn
Email
Besök -
Hemsida Ingen
Plats (stad)
Senaste besök 01:00 - 1:a Januari 1970
Poster i forumet
Varningar
Grupp
Medlem sedan 01:00 - 1:a Januari 1970
Artiklar och filer
Den här användaren har inga artiklar eller filer

Avatar


Presentation av

Den här användaren har inte skapat någon personlig presentation.

Senaste inläggen i forumet

forts. pythonproblem
    Citat av ozamosi:
Fler tips:
  • Lägg koden i source-taggar så den går att läsa
  • Lägg till en ny post så att folk ser att du gjort något - ingen läser om en tråd de redan läst, bara för att leta efter redigeringar.


Här kommer ett försök med taggar, ser inga färger i det här läget men det kanske ändrar sig när jag postar svaret!?
Jädrans vad tjatig jag börjar känna mig nu kring det här jädrans problemet jag har.

Alltså hur ska jag skriva rent praktiskt vad gäller en ny variabel i vilken tex första nyckeln ur den sorterade listan skall läggas och sedan skrivas ut så fort man startar programmet. Om jag sedan väljer alternativ 5) i menyn så ska jag kunna stega framåt till nästa nyckel i listan och printa ut denna som aktuell sida i min filofax.
Sedan måste jag få till en funktion för att kunna bläddra bakåt också på samma sätt.

//Lars

  1.  
  2. #inläsning av anteckningar
  3.  
  4. filename = "filfax.txt"
  5. def readFilofax(filofax):
  6. import os
  7. if os.path.exists(filename):
  8. store = open(filename,'r')
  9. for line in store:
  10. name = line.rstrip()
  11. entry = store.next().rstrip()
  12. filofax[name] = entry
  13. store.close()
  14.  
  15. #spara filofaxanteckningarna
  16.  
  17. def saveFilofax(filofax):
  18. store = open(filename, 'w')
  19. for name,entry in filofax.items():
  20. store.write(name + 'n')
  21. store.write(entry + 'n')
  22. store.close()
  23.  
  24. #välja alternativ
  25.  
  26. def getChoice(menu):
  27. print menu
  28. choice = int( raw_input("Välj alternativ(1-6): ") )
  29. return choice
  30.  
  31. #sätta in en ny sida
  32.  
  33. def addTodo(filofax):
  34. name = raw_input("Ange datum och månad: ")
  35. entry = raw_input("Skriv minnesanteckning: ")
  36. filofax[name] = entry
  37.  
  38. #ta bort en sida
  39.  
  40. def removeTodo(filofax):
  41. name = raw_input("Ange datum och månad: ")
  42. del(filofax[name])
  43.  
  44. #sök anteckning en viss dag
  45.  
  46. def findTodo(filofax):
  47. name = raw_input("Ange datum och månad: ")
  48. if name in filofax:
  49. print name, filofax[name]
  50. else: print "Tyvärr, angivet datum saknas: ", name
  51.  
  52. #visa alla anteckningar
  53.  
  54. def show_all_Todo(filofax):
  55. for name,entry in filofax.items():
  56. print name +":",entry
  57. #store = open(filename,'r')
  58. #for line in store:
  59. #print line
  60.  
  61. #bläddra framåt
  62.  
  63. def step_fwd_Todo(filofax):
  64. L1=filofax.keys()
  65. L1.sort()
  66. print "the keys are:"
  67. print L1, "n"
  68. print "Aktuell dag: ", L1[1], ": ", filofax[L1[1]]
  69.  
  70.  
  71. def main():
  72. theMenu = '''
  73. 1) Lägga till sida
  74. 2) Ta bort en sida
  75. 3) Sök sida
  76. 4) Visa alla sidor
  77. 5) Bläddra framåt
  78. 6) Avsluta och spara
  79. '''
  80. theFilofax = {}
  81. readFilofax(theFilofax)
  82. choice = getChoice(theMenu)
  83. while choice != 6:
  84. if choice == 1:
  85. addTodo(theFilofax)
  86. elif choice == 2:
  87. removeTodo(theFilofax)
  88. elif choice == 3:
  89. findTodo(theFilofax)
  90. elif choice == 4:
  91. show_all_Todo(theFilofax)
  92. elif choice == 5:
  93. step_fwd_Todo(theFilofax)
  94. else: print "Invalid choice, try again"
  95. choice = getChoice(theMenu)
  96. saveFilofax(theFilofax)
  97.  
  98. #if statement är sant om programmet körs direkt och
  99. #falskt om filen är importerad som en modul.
  100.  
  101. if __name__ == "__main__":
  102. main()
  103.  


Postad 19:28 - 19:e April 2007
forts. pythonproblem
Härligt! Då var jag inte helt fel ute den här gången...Smiley

Har du något konkret tips på hur jag ska skriva rent praktiskt för att få till det enligt dina tankegångar?



Postad 03:00 - 19:e April 2007
forts. pythonproblem
    Citat av ozamosi:
Fler tips:
  • Lägg koden i source-taggar så den går att läsa
  • Lägg till en ny post så att folk ser att du gjort något - ingen läser om en tråd de redan läst, bara för att leta efter redigeringar.


Tack för feedback! Jag har massor att lära, det är uppenbart. Ha tålamod!
Jag vet inte hur jag lägger till en..."ny post". Eller är det precis vad jag gjort nu när jag svarat på ditt meddelande? Jag har mest hittat länkar som citera och PM alt. skapa ny tråd...

Postad 02:42 - 19:e April 2007
Python problem
ozamosi kolla in koden som jag lagt in i forumet. Jag har skrivit några rader vid bläddrafunktionen och får programmet att skriva ut en aktuell sida om jag väljer 5).
Men jag vill att aktuell sida kommer upp automatiskt och att omman väljer funktionen 5) så bläddrar man ett steg eller "sida" framåt i filofaxen. Vilken kod och vart ska den skrivas in någonstans?
Hälsningar, Lars

Postad 11:47 - 18:e April 2007
forts. pythonproblem
Jag kom just på att jag kan skriva tex 2007-03-17: istället för 17 mars:.
Detta gör att jag får en sorterad lista om jag använder mig av sort().
Men nu vill jag ta tex den första nyckeln och dess tillhörande value och få det som något slags default värde eller aktuell sida i stil med:

Aktuell sida: 2007-05-03 : ...ka på semester...

1) Lägga till sida
2) Ta bort en sida
3) Sök sida
4) Visa alla sidor
5) Bläddra framåt
6) Avsluta och spara

Väljer jag sedan 5) ska aktuell sida bli tex:

Aktuell sida: 2007-05-04: Ankommer till resorten kl.10.00

1) Lägga till sida
2) Ta bort en sida
3) Sök sida
4) Visa alla sidor
5) Bläddra framåt
6) Avsluta och spara

Här kommer koden...

//Lars

#inläsning av anteckningar
filename = "filfax.txt"

def readFilofax(filofax):
import os
if os.path.exists(filename):
store = open(filename,'r')
for line in store:
name = line.rstrip()
entry = store.next().rstrip()
filofax[name] = entry
store.close()

#spara filofaxanteckningarna
def saveFilofax(filofax):
store = open(filename, 'w')
for name,entry in filofax.items():
store.write(name + '\n')
store.write(entry + '\n')
store.close()

#välja alternativ
def getChoice(menu):
print menu
choice = int( raw_input("Välj alternativ(1-6): ") )
return choice

#sätta in en ny sida
def addTodo(filofax):
name = raw_input("Ange datum och månad: ")
entry = raw_input("Skriv minnesanteckning: ")
filofax[name] = entry

#ta bort en sida
def removeTodo(filofax):
name = raw_input("Ange datum och månad: ")
del(filofax[name])

#sök anteckning en viss dag
def findTodo(filofax):
name = raw_input("Ange datum och månad: ")
if name in filofax:
print name, filofax[name]
else: print "Tyvärr, angivet datum saknas: ", name

#visa alla anteckningar
def show_all_Todo(filofax):
for name,entry in filofax.items():
print name +":",entry
#store = open(filename,'r')
#for line in store:
#print line

#bläddra framåt
def step_fwd_Todo(filofax):
L1=filofax.keys()
L1.sort()
print "the keys are:"
print L1, "\n"
print "Aktuell dag: ", L1[1], ": ", filofax[L1[1]]


def main():
theMenu = '''
1) Lägga till sida
2) Ta bort en sida
3) Sök sida
4) Visa alla sidor
5) Bläddra framåt
6) Avsluta och spara
'''
theFilofax = {}
readFilofax(theFilofax)
choice = getChoice(theMenu)
while choice != 6:
if choice == 1:
addTodo(theFilofax)
elif choice == 2:
removeTodo(theFilofax)
elif choice == 3:
findTodo(theFilofax)
elif choice == 4:
show_all_Todo(theFilofax)
elif choice == 5:
step_fwd_Todo(theFilofax)
else: print "Invalid choice, try again"
choice = getChoice(theMenu)
saveFilofax(theFilofax)

#if statement är sant om programmet körs direkt och falskt om filen är importerad som en modul.
if __name__ == "__main__":
main()

Postad 23:34 - 17:e April 2007

Skicka meddelande
Läs s blog