36 svar
304 visningar
destiny99 är nöjd med hjälpen
destiny99 6887
Postad: 25 jan 2023 20:38 Redigerad: 25 jan 2023 20:39

Listor I en lista

Hej!

Jag har definierat en funktion och får ingenting utskrivet.  Vad är det jag missar?

Analys 1202
Postad: 25 jan 2023 20:42

Du får gärna klippa in koden så skall jag kolla.

Analys 1202
Postad: 25 jan 2023 20:45

Men rent allmänt så skickar du ju in en variabel til funktionen samt börjar med att tilldela variabeln ett annat värde och ändrar sen ytterligare på värdet, det verkar inte logiskt enligt hur jag ser på saken. Men eftersom du nu tilldelat ett annat värde så borde värdet skrivas ut.

destiny99 6887
Postad: 25 jan 2023 20:47 Redigerad: 25 jan 2023 20:52
Analys skrev:

Men rent allmänt så skickar du ju in en variabel til funktionen samt börjar med att tilldela variabeln ett annat värde och ändrar sen ytterligare på värdet, det verkar inte logiskt enligt hur jag ser på saken. Men eftersom du nu tilldelat ett annat värde så borde värdet skrivas ut.

Asså jag vill att den skriver ut listan med [[11,12,13,14] ,[21,22],[31,32,33]]. Jag tänker jag kanske borde skriva typ 

def chomp(rowlist):

rowlist= listan jag skrev på bilden

Print(rowlist[0][0:4]). Jag måste ju definiera vad rowlist innebär så den kopplar. Oj jag visste ej ens att jag tilldelade variabeln något. Min avsikt var att definiera inuti parametern, annars klagar den ju..

destiny99 6887
Postad: 25 jan 2023 20:58
Analys skrev:

Du får gärna klippa in koden så skall jag kolla.

Jag vet ej hur jag man skickar koder och sånt. 

Analys 1202
Postad: 25 jan 2023 21:17

Du verkar ju vilja skicka in en parameter till funktionen som du sen inte vill använda, det behövs ju inte.

def chomp():

    rowlist = <vad som står på bilden>

    print(rowlist) 

destiny99 6887
Postad: 25 jan 2023 21:26 Redigerad: 25 jan 2023 21:26
Analys skrev:

Du verkar ju vilja skicka in en parameter till funktionen som du sen inte vill använda, det behövs ju inte.

def chomp():

    rowlist = <vad som står på bilden>

    print(rowlist) 

Precis så ska man skriva men vi behöver få ut en del element ut som jag sa innan. Hur gör vi det? Om vi bara skriver 

Def chomp():

Rowlist = det som står på bilden 

Print(rowlist)

Så kommer bara hela rowlist ut. Det vill vi väl ej?

Fermatrix 7841 – Fd. Medlem
Postad: 25 jan 2023 21:32
destiny99 skrev:
Analys skrev:

Du får gärna klippa in koden så skall jag kolla.

Jag vet ej hur jag man skickar koder och sånt. 

Gå till din Pycharm så att du har koden framför dig Följ nu följande sekvens:

CTRL + A -> CTRL + C -> Gå till pluggakuten -> skapa ett nytt inlägg -> tryck på ikonen {:} -> Ändra språket till Python -> CTRL+V i rutan.

Analys 1202
Postad: 25 jan 2023 21:33

Kanske förstår, skriver en kodsnutt och klistatr in här.

Analys 1202
Postad: 25 jan 2023 21:39

Denna kodsnutt:

def chomp():
rowlist=[["11","12","13","14"],["21","22","23","24"],["31","32","33","34"]]
print(rowlist)
rowlist[1]=rowlist[1][0:2]
rowlist[2]=rowlist[2][0:2]
print(rowlist)

chomp()

 

skriver ut:
[['11', '12', '13', '14'], ['21', '22', '23', '24'], ['31', '32', '33', '34']]
[['11', '12', '13', '14'], ['21', '22'], ['31', '32']]

Dvs först den fulla matrisen och sen en bantad variant.

destiny99 6887
Postad: 25 jan 2023 21:40 Redigerad: 25 jan 2023 21:41
Analys skrev:

Denna kodsnutt:

def chomp():
rowlist=[["11","12","13","14"],["21","22","23","24"],["31","32","33","34"]]
print(rowlist)
rowlist[1]=rowlist[1][0:2]
rowlist[2]=rowlist[2][0:2]
print(rowlist)

chomp()

 

skriver ut:
[['11', '12', '13', '14'], ['21', '22', '23', '24'], ['31', '32', '33', '34']]
[['11', '12', '13', '14'], ['21', '22'], ['31', '32']]

Dvs först den fulla matrisen och sen en bantad variant.

Okej ja precis men jag vill bara ha dessa 

[['11', '12', '13', '14'], ['21', '22'], ['31', '32']]. Hur får jag det?

 

Analys 1202
Postad: 25 jan 2023 21:43

Då tar du ju bort översta printsatsen, de skriver ju ut den ursprungliga listan av listor.

destiny99 6887
Postad: 25 jan 2023 21:45
Analys skrev:

Då tar du ju bort översta printsatsen, de skriver ju ut den ursprungliga listan av listor.

Analys,ser denna rätt ut och menar du såhär?

Analys 1202
Postad: 25 jan 2023 21:48

Jag fattar inte vad du har för miljö!

I Python används strikt indentering, allt som ingå i def chomp(): skall vara indenterat 4 space, annars kan koden inte köras. 

Analys 1202
Postad: 25 jan 2023 21:48

I övrigt gör koden vad du vill.

destiny99 6887
Postad: 25 jan 2023 21:50
Analys skrev:

Jag fattar inte vad du har för miljö!

I Python används strikt indentering, allt som ingå i def chomp(): skall vara indenterat 4 space, annars kan koden inte köras. 

Vad menar du med miljö? Ser du ej bilden? Okej angående indenteringen så förstår jag. 

destiny99 6887
Postad: 25 jan 2023 21:51
Analys skrev:

I övrigt gör koden vad du vill.

Tack! Det är underförstått.  

Analys 1202
Postad: 25 jan 2023 21:56

Måste dock erkänna att jag är nyfiken på varför du vill definera en lista av av listor och sen ta bort vissa element innan du skriver ut den, varför inte definiera den som du vill ha den från början? 

destiny99 6887
Postad: 25 jan 2023 21:59 Redigerad: 25 jan 2023 22:00
Analys skrev:

Måste dock erkänna att jag är nyfiken på varför du vill definera en lista av av listor och sen ta bort vissa element innan du skriver ut den, varför inte definiera den som du vill ha den från början? 

För att jag följer instruktioner från uppgiften. Tydligen så gör min output precis som de frågar efter men enda som saknas är tre parametrar matris, row and col. Men denna kod verkar göra det de frågar med dessa parametrar trots att row and col ej nämns 

Analys 1202
Postad: 25 jan 2023 22:07

Har du lust att dela själva uppgiften? Detta är rena mysteriet för mig!

destiny99 6887
Postad: 25 jan 2023 22:14
Analys skrev:

Har du lust att dela själva uppgiften? Detta är rena mysteriet för mig!

Yeah.

Laguna Online 28470
Postad: 25 jan 2023 22:18

Man ser inte högra delen av papperet.

destiny99 6887
Postad: 25 jan 2023 22:19
Laguna skrev:

Man ser inte högra delen av papperet.

Nej det är så även på skolans sida. Uppgiften var konstruerad på det sättet enligt andra studenter jag snackat med.

Laguna Online 28470
Postad: 25 jan 2023 22:26

Gah. Förkasta hela uppgiften.

destiny99 6887
Postad: 25 jan 2023 22:33
Laguna skrev:

Gah. Förkasta hela uppgiften.

Det får jag ej göra haha.. Då blir jag underkänd.

Laguna Online 28470
Postad: 25 jan 2023 23:18

Ni har ju inte möjlighet att läsa hela uppgiften. Klaga hos rektor.

Yngve 37822 – Livehjälpare
Postad: 26 jan 2023 07:59
destiny99 skrev:

Nej det är så även på skolans sida. Uppgiften var konstruerad på det sättet enligt andra studenter jag snackat med.

Nej så kan det inte vara.

Däremot kanske inte allt syns på bildskärmen.

Pröva att förminska (Ctrl-minus eller välj "Zooma" via någon meny).

Analys 1202
Postad: 26 jan 2023 22:00

En sak är iaf tämligen säker, funktionen skall ta inparametrar och returnera en delmängd av första parametern, en matris. 
lite oklart för mig dock om hur inparameter 2 o 3 skall påverka, det verkar ev som de  skall de skära bort en del av matris, i exemplet det nedre högra hörnet. 
det framgår inte heller om funktionen skall returnera en manipulerad kopia av inputmatrisen eller om man göra utskärningarna i inputmatrisen.

destiny99 6887
Postad: 26 jan 2023 22:23 Redigerad: 26 jan 2023 22:24
Analys skrev:

En sak är iaf tämligen säker, funktionen skall ta inparametrar och returnera en delmängd av första parametern, en matris. 
lite oklart för mig dock om hur inparameter 2 o 3 skall påverka, det verkar ev som de  skall de skära bort en del av matris, i exemplet det nedre högra hörnet. 
det framgår inte heller om funktionen skall returnera en manipulerad kopia av inputmatrisen eller om man göra utskärningarna i inputmatrisen.

Ah okej men så som jag gjorde till slut verkar ändå returnera en matris. Kmr ej riktigt på hur jag ska få andra o tredje parameter. Det var där jag fann uppgiften oklart..

Analys 1202
Postad: 26 jan 2023 22:55

Returnera är inte samma sak som att skriva ut.

chomp betyder tydligen bett och det ståmmer ju ganska väl med att skära ut en bit.

min tolking, rad och kolumn betyder skär från och med rad och från och med kolumn till nedre högra hörnet.

destiny99 6887
Postad: 26 jan 2023 23:24 Redigerad: 26 jan 2023 23:33
Analys skrev:

Returnera är inte samma sak som att skriva ut.

chomp betyder tydligen bett och det ståmmer ju ganska väl med att skära ut en bit.

min tolking, rad och kolumn betyder skär från och med rad och från och med kolumn till nedre högra hörnet.

Hm ser ej framför mig hur vi ska få en sån funktion med rader och kolumner. Tror jag satt i 5 h sist och kom ej vidare .. ge mig gärna ett exempel  på hur du hade konstruerat en kusin kod till denna om föregående kod ej är rätt..

Analys 1202
Postad: 27 jan 2023 00:51

Lite sent idag men fixar i morgonkväll. Funkar min gissning på vad problemet är i det större sammanhanget vad detta skall användas till?

destiny99 6887
Postad: 27 jan 2023 07:46
Analys skrev:

Lite sent idag men fixar i morgonkväll. Funkar min gissning på vad problemet är i det större sammanhanget vad detta skall användas till?

Allt jag förstår är att vi ska ha tre parametrar där rad och kolumner skär bort några element i specifik rad och kolumn innan den returnerar matrisen. 

anders_k 234
Postad: 27 jan 2023 11:17

så här resonerade jag mig fram till det

>>> a = [["11","12","13","14"],["21","22","23","24"],["31","32","33","34"]]
>>> a
[['11', '12', '13', '14'], ['21', '22', '23', '24'], ['31', '32', '33', '34']]
>>> a[0]
['11', '12', '13', '14']
>>> a[1]
['21', '22', '23', '24']
>>> a[2]
['31', '32', '33', '34']
>>> n = [a[0],a[1],[2][0:2]]
[['11', '12', '13', '14'], ['21', '22', '23', '24'], ['31', '32']]

>>>def chomp(m):
...	n = [m[0],m[1],m[2][0:2]]
...	return n
>>> b = chomp(a)
>>> b
[['11', '12', '13', '14'], ['21', '22', '23', '24'], ['31', '32']]

Analys 1202
Postad: 27 jan 2023 17:35
def chomp(rowlist,r,c):
    for i in range(r,len(rowlist)):
        rowlist[i]=rowlist[i][0:c]
    return rowlist

rowlist=[["11","12","13","14"],["21","22","23","24"],["31","32","33","34"]]       
print(chomp(rowlist,1,2))
Analys 1202
Postad: 27 jan 2023 17:37

Givetvis bör man kolla index etc men denna kodsnutt skär bort det nedre högra hörnet enligt inparametrar.

destiny99 6887
Postad: 27 jan 2023 19:08
Analys skrev:

Givetvis bör man kolla index etc men denna kodsnutt skär bort det nedre högra hörnet enligt inparametrar.

Vad tycks?

Svara Avbryt
Close