Gå till innehåll

Recommended Posts

Postad

 

förstår inte riktigt tbh, känner inte igen index-yttrycket och inte heller sequence, li eller egentligen vad som händer här :P

 

 

Det är variabler.

 

li = [243, 423, 223 ,123]				#deklarera en lista med de sekvenser du vill ha.

sequence = 123							#Här sker din kod för att fånga upp knapptryckningar osv du får ut en integer som innehåller din sekvens (123 säger vi). 

index = getindex(sequence, li)			#Hämta index för din sekvens med hjälp av funktionen getindex(). Skicka in din sekvens samt din lista

checksequence(index)					#Kalla på funktionen checksequence(). Skicka med index för din sekvens.

def getindex(sequence, li):				#Definiera en funktion som tar två inparametrar, sequence  och li
for i in range(len(li)):			#Loopa över din lista
	if sequence == li[i]:			#Jämför sequence med position i i listan
		return i;					#Om de överenstämmer, retunera i (index).
	else:							#Om sequence inte finns i lista, retunera -1
		return -1;

def checksequence(index):				#Definiera en funktion som tar en inparameter, index
if sequence == -1:					#Kolla vilket index din sequence har Är sequence -1 så fanns den inte i din lista
	print "no valid sequence"		#Skriv ut att sekvensen inte finns eller något
elif index > 2:						#Är sequence större än 2 så är de en dålig sekvens och djuret ska krympa
	shrink()						#Kalla på funktionen för att krympa
else:								#Annars ska det växa
	grow()							#Kalla på funktionen för att växa

  • Svars 3k
  • Created
  • Senaste svar

Top Posters In This Topic

Postad

På något sätt måste du definiera vilka av de 60 (64-4 som tråkar ut den) som är bra/dåliga. Tycker din idé med en bra-lista och en dåliglista är helt ok.

 

Tror vidare man kan vara oense om vad som är bra / dåligt; sova,plugga,tenta är sämre än plugga,sova,tenta imho. Men inte säkert att alla håller med...

 

Som kommentar till Mecklenburgaren och hans idé om att dela upp listan i två delar utan att dela upp listan :) -->

 

li = ['tenta festa sova', 1, 'plugga sova tenta', 1, 'festa sova tenta', 0, 'festa plugga tenta', 0];

test = 'festa sova tenta';
if li[li.index(test) + 1] == 1 
grow()
elif li[li.index(test) + 1] == 0
shrink()
else:
nochange()

 

Edit: ja, och om du inte deffar alla kombos får du hantera ValueError: 'festa festa festa' is not in list osv alternativt lägga till en if test in li innan såhär:

 

 

if test in li

if li[li.index(test) + 1] == 1

grow()

elif li[li.index(test) + 1] == 0

shrink()

osv

 

Postad

Tror vidare man kan vara oense om vad som är bra / dåligt; sova,plugga,tenta är sämre än plugga,sova,tenta imho. Men inte säkert att alla håller med...

Oja, tycker detta är helt korrekt. Empiriskt antaget optimum är faktiskt att inte röra studierna alls dagen före tenta, om planeringen tillåter detta (vilket man bör sikta på att den ska göra). Möjligen kan man ha någon punktlista att titta igenom på 15-20 min under dagen om man vill finna ro i att kunskapen sitter kvar så man kan sova gott.

 

Jag trodde rätt hårt på detta redan under år 1, men det tog till kanske år 4 innan jag började att alls leva som jag lärde. Ett bra sätt att bli övertygad tidigare är att se resultaten av det, så testa!

Postad

Så en elev

a) som studerar 2h/dag i 7 dagar och "vilar" dagen innan tenta presterar bättre än,

b) som studerar 2h/dag 8 dagar i rad innan tentan?

 

Om det är så skulle det vara intressant att läsa mer om du kunde dela din källa.

 

Personligen tycker jag det låter som att sanningen ligger i att eleven som lägger upp sina studier så att denne inte behöver plugga dagen innan tenta är en person som strukturerar sitt studerande och sannolikt har betydligt bättre studievanor än eleven som sitter och pluggar natten innan ...

Postad
Om det är så skulle det vara intressant att läsa mer om du kunde dela din källa.
Jag har ingen källa alls om detta, snarare tycker även jag att det skulle vara intressant och se något vetenskapligt.

 

Detta är baserat på mina egna och mina studiekamraters upplevelser under studierna.

 

Så en elev

a) som studerar 2h/dag i 7 dagar och "vilar" dagen innan tenta presterar bättre än,

b) som studerar 2h/dag 8 dagar i rad innan tentan?

Precis, men du får gärna betrakta det som en ren H1-hypotes.

 

Jag har dock inte studerat så många flumämnen (2h/ dag kring tentap..). Det gör inte heller IFS, därför tänkte jag inte på att nämna det. Hur det fungerar för dem som studerar memory och liknande familjespel vet jag inte. Möjligt att det rimligaste där tvärt om är studier tätare inpå, eftersom det vare sig kräver perspektiv på studiematerialet eller piggt huvud under tentamen och dessutom är information som i princip är lagrad mest för att försvinna efter kursen.

 

Sen beror det självklart även på examinatorn. Får du en dåligt gjord tenta med typtal identiska med det du "löste" igår kväll går det ju såklart vägen att göra uppgifterna kvällen före. Men jag tycker vi ska räkna med att examinatorn är okej.

 

Det där med att ta bort en studiedag är dock bara irrationell planering. Det är ett vanligt och naturligt misstag, men det är just irrationellt skapat och därför något man borde ta tag i (gärna snabbare än vad jag lyckades med).

 

För den som inte är alls bekant med ingenjörsämnen:

 

Den stora tröskeln i de flesta momenten är att helt enkelt begripa saker. Nya sätt att tänka, nya domäner att tänka/räkna i med sina nya lagar och regler.

 

De flesta kurser brukar kunna delas upp i ett antal delmoment med ett antal typiska problem att lösa (därav alla typtentor som ibland blir för "typiska"). När du väl förstår problemområdet, samt hur du strukturerar lösningar och hur du tillämpar de verktyg du fått, så är detta inget som mystiskt försvinner från huvudet. Om du inte rör ämnet på några år - visst - men inte fram till tentamen.

 

Däremot är (bra skapade) problem i närmaste att betrakta som unika, med tanke på hur många saker som kan förändras i uppgiftsbeskrivningen. Det är därför en enorm bonus att hinna få lite perspektiv på kursen (så uppgifterna ses för var de är snarare blir kopplade till det du gjorde igår kväll) samt inte minst vara så klar som möjligt i skallen eftersom en normal tenta tar åtminstone 3-4 timmar av klurande.

 

 

  • 2 weeks later...
Postad

Arbetet med P-uppgiften går mördande långsamt, men framåt! Man får inte hårdkoda vad som är bra kombinationer och vad som är dåliga kombinationer i skriptet, det måste läsas från en text-fil. Min text-fil ser ut så här:

 

festa

sova

tenta

--

festa

sova

sova

--

sova

tenta

festa

--

 

osv

 

Och min kod ser ut så här:

 

PositivLista=[]

global PositivLista

tmp=[]

for i, line in enumerate(open('PositivLista.txt')):

if i % 4 == 0 and tmp !=[]:

PositivLista.append(tmp)

tmp = []

if len(line.strip())>3:

tmp.append(line.strip())

 

Problemet blir ju dock att jag måste göra en massa kod-upprepning, när jag te.x. ska skapa min negativa lista så ser den ju ut likadan, förutom att jag byter ut Positiv mot Negativ, och byter text-fil från PositivLista.txt till NegativLista.txt (pratade med läraren och han sa att det var helt OK att använda två text-filter).

 

Någon som har några ideer på hur man kan undvika denna kodupprepning? Kan man skriva en funktion som har (namn på lista) och (namn på text-fil) som argument? Det blir dock problem att använda saker både som en global variabel och som parameter i vår funktion :P Finns det ett bättre sätt?

Postad
Arbetet med P-uppgiften går mördande långsamt, men framåt! Man får inte hårdkoda vad som är bra kombinationer och vad som är dåliga kombinationer i skriptet, det måste läsas från en text-fil. Min text-fil ser ut så här:

 

festa

sova

tenta

--

festa

sova

sova

--

sova

tenta

festa

--

 

osv

 

Och min kod ser ut så här:

 

PositivLista=[]

global PositivLista

tmp=[]

for i, line in enumerate(open('PositivLista.txt')):

if i % 4 == 0 and tmp !=[]:

PositivLista.append(tmp)

tmp = []

if len(line.strip())>3:

tmp.append(line.strip())

 

Problemet blir ju dock att jag måste göra en massa kod-upprepning, när jag te.x. ska skapa min negativa lista så ser den ju ut likadan, förutom att jag byter ut Positiv mot Negativ, och byter text-fil från PositivLista.txt till NegativLista.txt (pratade med läraren och han sa att det var helt OK att använda två text-filter).

 

Någon som har några ideer på hur man kan undvika denna kodupprepning? Kan man skriva en funktion som har (namn på lista) och (namn på text-fil) som argument? Det blir dock problem att använda saker både som en global variabel och som parameter i vår funktion :P Finns det ett bättre sätt?

 

En funktion som retunerar en lista och har sökväg som parameter. Hur menar du att det blir problem?

Postad

def HämtaLista('namn','sökväg'):

namn=[]

global name

tmp=[]

for i, line in enumerate(open(sökväg)):

if i % 4 == 0 and tmp !=[]:

namn.append(tmp)

tmp = []

if len(line.strip())>3:

tmp.append(line.strip())

return name

 

HämtaLista('PositivLista','PositivLista.txt')

HämtaLista('NegativLista','NegativLista.txt')

 

Detta ger error direkt

Postad
def HämtaLista('namn','sökväg'):

namn=[]

global name

tmp=[]

for i, line in enumerate(open(sökväg)):

if i % 4 == 0 and tmp !=[]:

namn.append(tmp)

tmp = []

if len(line.strip())>3:

tmp.append(line.strip())

return name

 

HämtaLista('PositivLista','PositivLista.txt')

HämtaLista('NegativLista','NegativLista.txt')

 

Detta ger error direkt

 

Vad får du för fel? Vad är variabeln "name" till för? Och sluta använda svenska när du kodar. ;)

 

def HämtaLista('sökväg'):

namn=[]

tmp=[]

for i, line in enumerate(open(sökväg)):

if i % 4 == 0 and tmp !=[]:

namn.append(tmp)

tmp = []

if len(line.strip())>3:

tmp.append(line.strip())

return namn

 

positivtLista = HämtaLista(PositivLista.txt)

negativLista = HämtaLista(negativLista.txt)

Postad

Ja det är det jag använder. Börjar få lite koll på det nu, tänker att det ska se ut lite såhär:

 

from tkinter import *

list1 = ['sleep','party','sleep']

root = Tk()

root.title("test!")

root.geometry("500x200")

class Application(Frame):

def __init__(self,master):

super(Application,self).__init__(master)

self.grid()

self.create_widgets()

 

def create_widgets(self,value=None):

Label(self,

text = "Welcome to the game!"

).grid(row = 0, column = 0, sticky = W)

self.btn1 = Button(self, text = "study", command =self.update_text, self.value = "study")

self.btn1.grid()

self.btn2 = Button(self, text = "party", command = self.update_text, self.value = "party")

self.btn2.grid()

self.btn3 = Button(self, text = "exam", command = self.update_text, self.value = "exam")

self.btn3.grid()

self.btn4 = Button(self, text = "sleep", command = self.update_text, self.value = "sleep")

self.btn4.grid()

 

def update_text(self):

message = "Your choice was "

message += value

print(message)

lista1.append(value)

 

app = Application(root)

app.grid()

root.mainloop()

 

Men funkar inte riktigt alls atm :)

Postad

lol :-)

 

Finns det något smart sätta att hantera var knapparna hamnar? Detta är ju inte så estetiskt tilltalande:

 

cott.png

 

Har försökt sitta och pillijocksa med row och column men det blir bara rätt random. Dessutom vill jag att rutorna ska vara lika stora, och framförallt större. Typ som de har gjort i exemplet här:

 

http://img196.imageshack.us/img196/1414/2jc0.png

 

Någon som vet? :)

Postad

Såååååååå, klar med uppgiften ända upp till C! Bara lite eventuell kod-förbättring/kommentarer kvar men det torde inte utgöra några större hinder! Tack så mycket för hjälpen!, ska börja klura på B också men tror inte det borde vara omöjligt. Spara ner all data på en fil när använder trycker "exit" bara och öppna upp datan varje gång man kör programmet igen. A ser klurigare ut, men den dagen den sorgen ;)

Postad
asch, glömde ju bort denna... var nog lite för berusad igår, fattade aldrig riktigt hur långt du hade kommit och nu så här i efterhand verkar du ju ha kommit en bit :)

 

hann knacka ihop det här (https://gist.github.com/anonymous/0d7f0bb57d302dc0f985) innan jag gick ut. om inte annat kan du se hur jag har stylat knapparna. :lol:

 

Detta är sanna PF-anda. Riktigt sjysst att lägga ner tid för att hjälpa till så mycket.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gäst
Svara i detta ämne...

×   Du har klistrat in innehåll med formatering.   Ta bort formatering

  Endast 75 max uttryckssymboler är tillåtna.

×   Din länk har automatiskt bäddats in.   Visa som länk istället

×   Ditt tidigare innehåll har återställts.   Rensa redigerare

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Skapa nytt...