Idle netiskne – Python – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Idle netiskne – Python – Fórum – Programujte.comIdle netiskne – Python – Fórum – Programujte.com

 

selkir
~ Anonymní uživatel
140 příspěvků
17. 8. 2007   #1
-
0
-

mám problém když otevřu idle dám new window a napíšu "import random
random.randint(1,10)"
pak F5 nic to neudělá
prosím co s tím?!

Nahlásit jako SPAM
IP: ...–
geon0
Grafoman
17. 8. 2007   #2
-
0
-

napiš raději:

import random

print random.randint(1,10)


;-)

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
selkir
~ Anonymní uživatel
140 příspěvků
17. 8. 2007   #3
-
0
-

To geon:dik ale jak mám udělat aby to vygenerované číslo bylo pod neznámou x
př.:x=vygenerované číslo

Nahlásit jako SPAM
IP: ...–
Chrasty
~ Redaktor
+4
Posthunter
17. 8. 2007   #4
-
0
-

co takhle



import random
x=random.randint(1,10)

?:-)

Nahlásit jako SPAM
IP: ...–
selkir
~ Anonymní uživatel
140 příspěvků
18. 8. 2007   #5
-
0
-

for x in range(10):#zopakuje 10x příklad

import random
dobre=0
spatne=0
prvnicislo=random.randint(1,10)#vygeneruje první číslo
import random
druhecislo=random.randint(1,10)#vygeneruje druhé číslo
print "Kolik je:", prvnicislo,"*", druhecislo
cislo=input("Zadej číslo: ")
vysledek=prvnicislo*druhecislo
if cislo==vysledek:#rozhodne o správnosti zadaného čísla
print ("Ano-to je dobře.")
dobre=dobre+1
else:
print ("Ne,lituji. Správná odpověď je "),vysledek
spatne=spatne+1

print 'Máte', dobre, 'správných odpovědí a', spatne, 'špatných.'




mám problém s tím jak nastavit aby to správně počítalo ty špatné a správné odpovědi
potřebuji aby při každým novým for to znovu přičetlo podle výsledku
ale nechci přímo jak to udělat jen naznačit, chci si na to přijíd sám

Nahlásit jako SPAM
IP: ...–
Chrasty
~ Redaktor
+4
Posthunter
18. 8. 2007   #6
-
0
-

proč dvakrát importuješ modul random?:-)
dej ho tam jednou a uplně na začátek kódu(ne do toho cyklu)

a teď k tomu počítání správných/špatných odpovědí...naznačim:-D

to "for x in range(..)" říká vlastně "pro každé číslo x v rozmezí tom a tom,zopakuj tohle:"...pro KAŽDÉ číslo,takže včetně toho, že dobre=0 a spatne=0

chtěl jsi to jenom naznačit,tak tady to máš:)

jo a nebude ti to fungovat protože tam máš diakritiku a na začátku jsi nedeklaroval kódování...úplně na začátek napiš

#-*-coding:cp1250-*-
a pak před každý řetězec kde je použitá diakritika písmeno u ;)

EDIT:jo a teď jsem si všimnul...k čemu tam máš ty závorky?třeba
print ("Ano-to je dobře.")

Nahlásit jako SPAM
IP: ...–
selkir
~ Anonymní uživatel
140 příspěvků
18. 8. 2007   #7
-
0
-

To Chrasty:
už to mám a mám z toho dobrej pocit
výsledný kód

#-*-coding:cp1250-*-

import random
dobre=0
spatne=0
for x in range(10): #zopakuje 10x příklad
prvnicislo=random.randint(1,10) #vygeneruje první číslo
druhecislo=random.randint(1,10) #vygeneruje druhé číslo
print "Kolik je:", prvnicislo,"*", druhecislo
cislo=input ("Zadej číslo: ")
vysledek=prvnicislo*druhecislo
if cislo==vysledek: #rozhodne o správnosti zadaného čísla
print "Ano-to je dobře."
dobre=dobre+1
else:
print "Ne,lituji. Správná odpověď je ",vysledek
spatne=spatne+1
print 'Máte', dobre, 'správných odpovědí a', spatne, 'špatných.'

dík za to kódování, ty závorky to je taková chybka a ohledně diakritiky tam u nemám a funguje

Nahlásit jako SPAM
IP: ...–
selkir
~ Anonymní uživatel
140 příspěvků
18. 8. 2007   #8
-
0
-

a ještě bych potřeboval pomoct s tímhle

# -*- coding: cp1250 -*-

from Tkinter import*
import random
class Had:
def __init__(self):
self.sirka=15
self.vyska=10
self.okno=Tk()
if __name__ == "__main__":
Had()
mainloop()
self.platno=Canvas(width=self.sirka*30,height=self.vyska*30)
self.platno.pack()
def vytvor_objekt(self,x,y,barva):
x=x*30
y=y*30
self.platno.create_rectangle(x,y,x+30,y+30,fill=barva)
for y in range(self.vyska):
for x in range(self.sirka):
if y in [0,self.vyska-1] or x in [0,self.sirka-1]:#Jestliže se jedná o krajní bod, ať je černý.
self.vytvor_objekt(x,y,"black")
else:
self.vytvor_objekt(x,y,"white")
self.okno.bind('<Key>',self.stisk)
def stisk(self, akce):
if akce.keysym in ["Left","Right","Down","Up"]:
self.smer=akce.keysym
def stisk(self, akce):
if akce.keysym == "Right" and self.smer != "Left":self.smer="Right"
elif akce.keysym == "Left" and self.smer != "Right":self.smer="Left"
elif akce.keysym == "Up" and self.smer != "Down":self.smer="Up"
elif akce.keysym == "Down" and self.smer != "Up":self.smer="Down"
self.smer = "Right"
self.had=[[1,self.vyska-2],[2,self.vyska-2],[3,self.vyska-2],[4,self.vyska-2],[5,self.vyska-2]]
def __init__(self):
self.rychlost=500
#Vykreslení plochy
for prvek in self.had:#Vykresluju hada
self.vytvor_objekt(prvek[0],prvek[1],"green")
self.okno.after(self.rychlost,self.posun)#Za určitou dobu zavolej funkci self.posun.

self.vytvor_objekt(self.had[0][0],self.had[0][1],"white")#Poslední políčko musí být bílé.
self.had=self.had[1:]#Zkrať seznam políček s hadem.
def zvetsi_hada(self):
if self.smer == "Right":
#Hlava hada se nachází například na souřadnicích [3,3]. Pokud má had zahnout doprava, hlava se přesune na souřadnice [4,3].
self.had.append([self.had[-1][0]+1,self.had[-1][1]])
elif self.smer == "Left":
self.had.append([self.had[-1][0]-1,self.had[-1][1]])
elif self.smer == "Up":
self.had.append([self.had[-1][0],self.had[-1][1]-1])
elif self.smer == "Down":
self.had.append([self.had[-1][0],self.had[-1][1]+1])
def posun(self):
self.vytvor_objekt(self.had[0][0],self.had[0][1],"white")
self.had=self.had[1:]
self.zvetsi_hada()
self.vytvor_objekt(self.had[-1][0],self.had[-1][1],"green")#Vykresli políčko, které bylo vygenerováno ve funkci zvetsi_hada.
self.okno.after(self.rychlost,self.posun)
self.jidlo=[5,5]
self.vytvor_objekt(self.jidlo[0],self.jidlo[1],"red")
def pridej_jidlo(self):
while 1:
x=random.randint(1,self.sirka-2)
y=random.randint(1,self.vyska-2)
if [x,y] not in self.had:break
self.jidlo=[x,y]
self.vytvor_objekt(self.jidlo[0],self.jidlo[1],"red")
if self.had[-1] == self.jidlo:
self.pridej_jidlo()
self.zvetsi_hada()
self.vytvor_objekt(self.had[-1][0],self.had[-1][1],"green")
hlava=self.had[-1]
#Když je x nebo y rovno nule, když x je rovno šířce-1, nebo když y je rovno výšce-1, had narazil.
if hlava[0] == 0 or hlava[0] == self.sirka-1 or hlava[1] == 0 or hlava[1] == self.vyska-1:
self.konec()
#A nyní přijde kontrola, zda had nenarazil do sebe:
novy_seznam=[]
for prvek in self.had:
if prvek not in novy_seznam:
novy_seznam.append(prvek)
if len(self.had) != len(novy_seznam):
self.konec()
def konec(self):
self.okno.destroy()

když to pustím oběví se okno ale žádná mřížka ani had
a když to okno zavřu napíše to
Traceback (most recent call last):

File "C:\WINDOWS\Plocha\VÍT\python\had.py", line 12, in <module>
self.platno=Canvas(width=self.sirka*30,height=self.vyska*30)
NameError: name 'self' is not defined

co s tím mám dělat

Nahlásit jako SPAM
IP: ...–
selkir
~ Anonymní uživatel
140 příspěvků
18. 8. 2007   #9
-
0
-

jo chtěl bych se taky zeptat jak je na tom python v porovnání s dalšíma jazykama, jestli má cenu se ho učit a jestli se v něm daj programovat 3D hry, rád bych programoval 3D hry a zatím se mi python docela líbí.
Kde všude se dá užít?

Nahlásit jako SPAM
IP: ...–
Chrasty
~ Redaktor
+4
Posthunter
18. 8. 2007   #10
-
0
-

hehe,nějak jsi přeskočil z "random" modulu až k poměrně pokročilýmu hadovi,ne?a to za jeden den:-)bravo:-)

s tím hadem ti neporadím,na to nestačím:)

k tomu porovnání,využití etc.-využití najde všude,na všech platformách(systémech),dají se v něm dělat desktopové i webové aplikace,3D hry...samozřejmě grafiku musíš udělat třeba v 3Ds Max,nebo Blenderu:-)

kdyby tě zajímalo kde všude se python využívá,tak je to třeba v Googlu,NASA(plánování letů co jsem tak slyšel),ILM(tvůrci her Star Wars-3D hry:-)),EVE Online-to je MMORPG(taky 3d a navíc online:D),je v něm napsaný Total Commander,velká část KDE v Linuxech(možná i GNOME,nevim:-))

jak vidíš tak P pokrývá hodně velkou oblast využití a navíc když ti vyhovuje tak není co řešit;-)

Nahlásit jako SPAM
IP: ...–
Phoenix0
Super člen
19. 8. 2007   #11
-
0
-

Chrasty píše:#
# je v něm napsaný Total Commander


tak to bych neřek. TC je v delphi a docela ho to omezuje (delphi pořádně nepodporuje 64 bitů)

Nahlásit jako SPAM
IP: ...–
Blujacker
~ Moderátor
0
Grafoman
19. 8. 2007   #12
-
0
-
Nahlásit jako SPAM
IP: ...–
Navštivte server Matematika pro každého
Najdete zde články zabývající se matematikou základních a středních škol a databázi hlavolamů.
Pro vyzkoušení Vaš
selkir
~ Anonymní uživatel
140 příspěvků
19. 8. 2007   #13
-
0
-

To Blujacker:to co se tam píše chápu jestli jsi myslel tohle-:)

Nahlásit jako SPAM
IP: ...–
Blujacker
~ Moderátor
0
Grafoman
19. 8. 2007   #14
-
0
-

no, že ten článek o Hadovi je mířen pro ty, kteří už s OOP mají zkušenosti. Takže všechen kód musí být ve třídě...

Nahlásit jako SPAM
IP: ...–
Navštivte server Matematika pro každého
Najdete zde články zabývající se matematikou základních a středních škol a databázi hlavolamů.
Pro vyzkoušení Vaš
selkir
~ Anonymní uživatel
140 příspěvků
19. 8. 2007   #15
-
0
-

To Blujacker:ty snad výš co v tom kódu mám špatně jestli jo tak napiš
předem dik

Nahlásit jako SPAM
IP: ...–
Blujacker
~ Moderátor
0
Grafoman
19. 8. 2007   #16
-
0
-

jo, vím... snad všechno. si to jenomo copy & paste z toho článku ne? Jak říkám, než to pochopíš, tak se nauč OOP...

Nahlásit jako SPAM
IP: ...–
Navštivte server Matematika pro každého
Najdete zde články zabývající se matematikou základních a středních škol a databázi hlavolamů.
Pro vyzkoušení Vaš
geon0
Grafoman
19. 8. 2007   #17
-
0
-

To Blujacker: hehe, i takoví jsou lidé ;-)

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
selkir
~ Anonymní uživatel
140 příspěvků
19. 8. 2007   #18
-
0
-

To geon:jsem si chtěl zkusit hru je snad všem samozřejmě jasné že ctrl+c a ctrl+v ale jen bych chtěl aby mi to fungovalo
pls. pomoc

Nahlásit jako SPAM
IP: ...–
geon0
Grafoman
19. 8. 2007   #19
-
0
-

To selkir: jestli si chceš hrát, zahraj si miny ve Windows, jestli se chceš učit programovat, začni od začátku.

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
selkir
~ Anonymní uživatel
140 příspěvků
20. 8. 2007   #20
-
0
-

mám takový problém



veta="Python je skvely objektove orientovany, interpretovany a interaktivni programovaci jazyk."
delka=len(veta)
poslednipismeno=delka-1
print veta[poslednipismeno]

tak mi to vytiskne 88, místo nějaké písmeno
a ještě jak udělat aby byla věta pozpátku myslím, že takhle ale chtěl bych opět naznačit jestli ne


print veta[-1:-89]

a ještě prosím naznačit jak bych měl hledat prostřední znak-to nějak nevím
předem dik moc
přeci jen jsem začátečník
jo a geona bych se chtěl zeptat jestli můžu ještě posílat úkoly a jak na to

Nahlásit jako SPAM
IP: ...–
selkir
~ Anonymní uživatel
140 příspěvků
20. 8. 2007   #21
-
0
-

jo ješně něco je něco co by mě vrátilo na začátek programu
nebo popřípadě na nějaké návěstí v programu
něco jako label u javascript

Nahlásit jako SPAM
IP: ...–
geon0
Grafoman
20. 8. 2007   #22
-
0
-

Hele, selkirku, nevím co tě učí ve škole, ale zde je slušnost s každou novou otázkou zakládat nové téma. Je to kvůli lepší přehlednosti. Víš, kdybys byl první, tak bych možná reagoval, ale již je podobných věcí příliš. Taky by mě potěšilo, kdybych viděl nějaké věty - věta začíná velkým písmenem a končí tečkou ;-)

Nahlásit jako SPAM
IP: ...–
geon. volume doprava.
Chrasty
~ Redaktor
+4
Posthunter
20. 8. 2007   #23
-
0
-

tak mi to vytiskne 88, místo nějaké písmeno

když neřekneš jaké písmeno chceš vytisknout,tak to je pak těžký....

jestli jsi chtěl vytisknout poslední písmeno,jak napovídá kód,tak na to si zkus přijít sám..poslední prvek má index -1;-)

přijde mi to jakože se vůbec nesnažíš...jednou ti něco nefunguje,tak to sem hned píšeš...podle mě jsou tutoriály od geona skvěle napsané, určitě v těch začátečních lekcích stačí zapojit alespoň minimálně mozek...musíš to zkusit několikrát,ne jednom jednou,nebo dvakrát. Neříkám, že jsem nějak extra zkušenej v Pythonu, ale snažím se co to jde:-)

zkus se zaregistrovat, není to složitější než procházení řetězcem:)

Nahlásit jako SPAM
IP: ...–
Blujacker
~ Moderátor
0
Grafoman
20. 8. 2007   #24
-
0
-

To selkir:

Tak mi to vytiskne 88, místo nějaké písmeno


Nevím jak si to pouštěl, ale mě to funguje:


>>> veta="Python je skvely objektove orientovany, interpretovany a interaktivni programovaci jazyk."
>>> delka=len(veta)
>>> poslednipismeno=delka-1
>>> print veta[poslednipismeno]
.

Nahlásit jako SPAM
IP: ...–
Navštivte server Matematika pro každého
Najdete zde články zabývající se matematikou základních a středních škol a databázi hlavolamů.
Pro vyzkoušení Vaš
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 3 hosté

Podobná vlákna

Blu IDLE — založil Jakub Vojáček

Nejde spustit IDLE(python gui) — založil jvjak-py

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý