Gå til innhold

Forskjellige spørsmål om hvordan å bruke Phyton


Anbefalte innlegg

Etter man har skrevet inn programmeringskodene... Hvordan får man lage et design til programmet? Jeg har hørt at dette har noe med en compiler å gjøre :hmm: Hva er egentlig det? Og, som sagt, hvordan lager jeg et design til programmet mitt? Og hvordan gjør jeg om programmet til en .exe fil når det er ferdig?

Endret av chipmann
Lenke til kommentar
Videoannonse
Annonse

Men hvordan kjører jeg programmet?

 

Jeg laget dette, bare for å gjøre det enkelt:

 

>>> # Calcutation of the area of a sircle

>>> radius = input("What is the radius?")

What is the radius? 10

>>> print "The area of the sircle is", radius*radius*3.14

The area of the sircle is 314.0

 

Hvordan kjører jeg det? Og er det noen som vet om noen gode guider på norsk?

Endret av chipmann
Lenke til kommentar

Hvis du vil lage gui til areal programmet så kan du gjøre det slik:

 

Jeg er ikke så veldig god på gui enda, så det er ikke sikkert det er 100% riktig gjort, men det funker ihvertfall.

Du må ha wxPython installert.

import wx
import math


class Frame(wx.Frame):
   pass
       


class App(wx.App):

   
   def OnInit(self):
       self.area = Frame(parent=None, title='Area', size=(150, 140))
       self.SetTopWindow(self.area)


       self.panel = wx.Panel(self.area)
       
       self.text1 = wx.StaticText(self.panel, label="What is the radius?")
       self.text2 = wx.StaticText(self.panel, label="The area of the circle is:")

       self.answerbutton = wx.Button(self.panel, label='Regn Ut')
       self.answerbutton.Bind(wx.EVT_BUTTON, self.onArea)
       
       self.radiusinput = wx.TextCtrl(self.panel)
       self.content = wx.TextCtrl(self.panel)
       
       hbox = wx.BoxSizer()
       hbox.Add(self.radiusinput, proportion=1, flag=wx.EXPAND)
       hbox.Add(self.answerbutton, proportion=0, flag=wx.LEFT, border=5)
       
       vbox = wx.BoxSizer(wx.VERTICAL)  
       vbox.Add(self.text1, proportion=0, flag=wx.LEFT | wx.TOP | wx.BOTTOM, border=5)
       vbox.Add(hbox, proportion=0, flag=wx.EXPAND | wx.ALL, border=5)
       vbox.Add(self.text2, proportion=0, flag=wx.LEFT | wx.TOP | wx.BOTTOM, border=5)
       vbox.Add(self.content, proportion=0, flag=wx.EXPAND | wx.LEFT | wx.BOTTOM | wx.RIGHT, border=5)
       

       self.panel.SetSizer(vbox)
       self.area.Show()
       return True
   
   
   
   def onArea(self, event):
   
       temp = self.radiusinput.GetValue()
       
       try:
           radius = float(temp)
           ans = radius*radius*math.pi
           self.content.SetValue(str(ans))   
             
       except ValueError:
           self.content.SetValue("Invalid Input")
           

       

if __name__ == '__main__':
   app = App()
   app.MainLoop()

Lenke til kommentar

høh? :hmm: skjønte ikke noe av det, men jeg skal prøve. ta en titt på denne areal-kalkulatoren jeg laget nå. den er litt lang, men jeg regner med at den funker. man kan regne areal av kvadrater, rektangler og sirkler :) den er ikke så veldig proff, men den holder til skolearbeidet tror jeg :D

 

print "Welcome!"
print "This is a program made for finding the area of different shapes."
print "----------------------------------------------------------------"
print
print
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
shape = input ("Type in 1, 2 or 3 here: ")
print
print
if shape == 1:
print "You have chosen to find the area of a sircle"
print
radius = input ("Please type in the radius of the sircle here: ")
print
print "The area of the sircle is", radius*radius*3.14
print
print
print "Do you want to calculate a new area?"
print
print "1: Yes"
print "2: No"
print
choice = input ("Type 1 or 2 here: ")
print
if choice == 1:
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
shape = input ("Type in 1, 2 or 3 here: ")
if choice == 2:
print "Good bye!"
print
print
if shape == 1:
print "You have chosen to find the area of a sircle"
print
radius = input ("Please type in the radius of the sircle here: ")
print
print "The area of the sircle is", radius*radius*3.14
print
print
print "Do you want to calculate a new area?"
print
print "1: Yes"
print "2: No"
print
choice = input ("Type 1 or 2 here: ")
print
if choice == 1:
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
shape = input ("Type in 1, 2 or 3 here: ")
if choice == 2:
print "Good bye!"
if shape == 2:
print "You have chosen to find the area of a rectangle"
print
width = input ("Please type in the width here: ")
height = input ("Please type in the height here: ")
print
print "The area of the rectangle is", width*height
print
print
print "Do you want to calculate a new area?"
print
print "1: Yes"
print "2: No"
print
choice = input ("Type in 1 or 2 here: ")
print
if choice == 1:
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
print
shape = input ("Type in 1, 2 or 3 here: ")
print
if choice == 2:
print "Good bye!"
if shape == 3:
print "You have chosen to find the area of a rectangle"
print
side = input ("Please type inn the lenght of one of the sides here: ")
print
print "The area of the square is", side*side
print
print
print "Do you want to calculate a new area?"
print
print "1: Yes"
print "2: No"
print
choice = input ("Type in 1 or 2 here: ")
print
if choice == 1:
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
print
shape = input ("Type in 1, 2 or 3 here: ")
print
if choice == 2:
print "Good bye!"
print
if shape == 2:
print "You have chosen to find the area of a rectangle"
print
width = input ("Please type in the width here: ")
height = input ("Please type in the height here: ")
print
print "The area of the rectangle is", width*height
print
print
print "Do you want to calculate a new area?"
print
print "1: Yes"
print "2: No"
print
choice = input ("Type in 1 or 2 here: ")
print
if choice == 1:
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
print
shape = input ("Type in 1, 2 or 3 here: ")
print
print
if shape == 1:
print "You have chosen to find the area of a sircle"
print
radius = input ("Please type in the radius of the sircle here: ")
print
print "The area of the sircle is", radius*radius*3.14
print
print
print "Do you want to calculate a new area?"
print
print "1: Yes"
print "2: No"
print
choice = input ("Type 1 or 2 here: ")
print
if choice == 1:
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
shape = input ("Type in 1, 2 or 3 here: ")
if choice == 2:
print "Good bye!"
print
print
if shape == 2:
print "You have chosen to find the area of a rectangle"
print
width = input ("Please type in the width here: ")
height = input ("Please type in the height here: ")
print
print "The area of the rectangle is", width*height
print
print
print "Do you want to calculate a new area?"
print
print "1: Yes"
print "2: No"
print
choice = input ("Type in 1 or 2 here: ")
print
if choice == 1:
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
print
shape = input ("Type in 1, 2 or 3 here: ")
print
if choice == 2:
print "Good bye!"
print
print
if shape == 3:
print "You have chosen to find the area of a rectangle"
print
side = input ("Please type inn the lenght of one of the sides here: ")
print
print "The area of the square is", side*side
print
print
print "Do you want to calculate a new area?"
print
print "1: Yes"
print "2: No"
print
choice = input ("Type in 1 or 2 here: ")
print
if choice == 1:
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
print
shape = input ("Type in 1, 2 or 3 here: ")
print
if choice == 2:
print "Good bye!"



if shape == 3:
print "You have chosen to find the area of a rectangle"
print
side = input ("Please type inn the lenght of one of the sides here: ")
print
print "The area of the square is", side*side
print
print
print "Do you want to calculate a new area?"
print
print "1: Yes"
print "2: No"
print
choice = input ("Type in 1 or 2 here: ")
print
if choice == 1:
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
print
shape = input ("Type in 1, 2 or 3 here: ")
print
if choice == 2:
print "Good bye!"
print
print
if shape == 1:
print "You have chosen to find the area of a sircle"
print
radius = input ("Please type in the radius of the sircle here: ")
print
print "The area of the sircle is", radius*radius*3.14
print
print
print "Do you want to calculate a new area?"
print
print "1: Yes"
print "2: No"
print
choice = input ("Type 1 or 2 here: ")
print
if choice == 1:
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
shape = input ("Type in 1, 2 or 3 here: ")
if choice == 2:
print "Good bye!"
print
print
if shape == 2:
print "You have chosen to find the area of a rectangle"
print
width = input ("Please type in the width here: ")
height = input ("Please type in the height here: ")
print
print "The area of the rectangle is", width*height
print
print
print "Do you want to calculate a new area?"
print
print "1: Yes"
print "2: No"
print
choice = input ("Type in 1 or 2 here: ")
print
if choice == 1:
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
print
shape = input ("Type in 1, 2 or 3 here: ")
print
if choice == 2:
print "Good bye!"
print
print
if shape == 3:
print "You have chosen to find the area of a rectangle"
print
side = input ("Please type inn the lenght of one of the sides here: ")
print
print "The area of the square is", side*side
print
print
print "Do you want to calculate a new area?"
print
print "1: Yes"
print "2: No"
print
choice = input ("Type in 1 or 2 here: ")
print
if choice == 1:
print "Please select a shape:"
print "1: sircle"
print "2: rectangle"
print "3: square"
print
shape = input ("Type in 1, 2 or 3 here: ")
print
if choice == 2:
print "Good bye!"

Lenke til kommentar

nå har det skjedd no galt. når jeg prøver å få opp GUI-en eller å kjøre et program får jeg en feilmelding om at en brannmur gjør at det er dårlig connection til phyton. Men alle brannmurene tillater alt fra phyton og jeg har til og med prøvd å skru dem av, men det virker ikke :( :(

Lenke til kommentar

Vet ikke hva som er feil med brannmuren, men du kan prøve å restarte.

 

 

Men koden din over her ble veldig lang, hvis du ser på den så er det mye du har skrevet mange ganger.

 

Det du kan prøve da er å putte de forskjellige tingene inn i funksjoner. Det er da slik at du skriver koden du skal bruke inn i en funksjon og så når du vil bruke det du har skrevet inne i funksjonen så trenger du bare skrive navnet på funksjonen og da kjøres koden du skrev i funksjonen.

 

f.eks:

 


def circle():
   print "You have chosen to find the area of a sircle\n"
   radius = input("Please type in the radius of the sircle here: ")
   print "\nThe area of the sircle is: ", radius*radius*3.14
       

def square():
   print "You have chosen to find the area of a square\n"
   side = input ("Please type inn the lenght of one of the sides here: ")
   print "\nThe area of the square is: ", side*side
   
   
def rectangle():
   print "You have chosen to find the area of a rectangle\n"
   width = input ("Please type in the width here: ")
   height = input ("Please type in the height here: ")
   print "\nThe area of the rectangle is: ", width*height

   

print "Welcome!"
print "This is a program made for finding the area of different shapes."
print "----------------------------------------------------------------"

while True:

   print "\nDo you want to calculate a new area?\n"
   print "1: Yes"
   print "2: No"
   choice = input ("\nType in 1 or 2 here: ")
   
   if choice == 1:
       
       while True:

           print "\n\nPlease select a shape:"
           print "1: sircle"
           print "2: rectangle"
           print "3: square\n"

           shape = input ("Type in 1, 2 or 3 here: ")
           print 
           
           if shape == 1:
               circle()
               break
           
           elif shape == 2:
               square()
               break
           
           elif shape == 3:
               rectangle()
               break
               
           else:
               print "try again"
           
   elif choice == 2:
       print "\nGood bye!"
       break
       
   else:
       print "\ntry again"

 

Her har jeg puttet utregingene for sirkel, rektangel og kvadrat inn i funksjoner. Så feks hvis jeg vil finne ut hva arealet av sirkelen er så skriver jeg bare circle()

Da blir det jeg har skrevet under sirkel funksjonen gjort.

 

Her har jeg også brukt while loops, det gjør da at koden går om og om igjen automatisk.

For å avslutte loopen så bruker jeg break.

 

Si fra hvis det er noe du ikke skjønner, så kan jeg prøve å forklare bedre.

Lenke til kommentar

supert. restartet maskinen før du svarte og det funket :)

Men problemet mitt er at jeg ikke vet åssen jeg kan få noe til å gjenta seg i Phyton :( Slik at jeg kan skrive inn en kommando så kommer jeg tilbake til menyen der jeg velger om jeg skal finne areal av sirkel eller firkant. Jeg kan bare finne arealet av noe 1 gang så må jeg restarte programmet for å finne et nytt areal :(

Lenke til kommentar

Ja, det kan du bruke loops til.

 

F.eks slik:

while True:
   radius = input("\nPlease type in the radius of the sircle here: ")
   print "\nThe area of the sircle is: ", radius*radius*3.14

Prøv å lagre det over og start det, da vil den gå om og om igjen automatisk.

 

Dette er en while loop. den går om og om igjen så lenge det som står etter while er True.

 

feks:

i = 0
while i < 5:
   print "hallo"
   i = i+1

her vil loopen gå om og om igjen så lenge i er midre enn 5. For hver runde i loopen så blir i lagt til 1. Til slutt så er i 5 og da avbrytes loopen.

Siden loopen fortsetter så lenge den er True.

1 < 5 er True, loopen fortsetter

5 < 5 er False, loopen avsluttes

Lenke til kommentar

Jeg laget litt mer ut av den slik at den ble sånn: ikke noe feil!

 

def circle():
  print "You have chosen to find the area of a sircle\n"
  print
  radius = input("Please type in the radius of the sircle here: ")
  print "\nThe area of the sircle is: ", radius*radius*3.14
   
  
def rectangle():
  print "You have chosen to find the area of a rectangle\n"
  print
  width = input ("Please type in the width here: ")
  height = input ("Please type in the height of the rectangle here: ")
  print "\nThe area of the rectangle is: ", width*height


def square():
  print "You have chosen to find the area of a square\n"
  print
  side = input ("Please type inn the lenght of one of the sides here: ")
  print "\nThe area of the square is: ", side*side


def sylinder():
   print "You have chosen to find the volum of a sylinder\n"
   print
   radius = input ("Please type in the radius of the sylinder here: ")
   height = input ("Please type in the height of the sylinder here: ")
   print "\nThe volum of the sylinder is: ", radius*radius*3.14*height


def prism():
   print "You have chosen to find the volum of a prism\n"
   print
   width = input ("Please type in the width of the prism here :")
   lenght = input ("Please type in the lenght of the prism here :")
   height = input ("Please type in the height of the prism here :")
   print "\nThe volum of the prism is: ", width*lenght*height


def dice():
   print "You have chosen to find the volum of a dice\n"
   print
   side = input ("Please type in the lenght of one of the sides here: ")
   print "\nThe volum of the dice is: ", side*side*side
      

print "Welcome!"
print
print "This is a program made for calculation of area and volum."
print "---------------------------------------------------------"

while True:

  print "\nDo you want to calculate a new area?\n"
  print "1: Yes"
  print "2: No"
  choice = input ("\nType in 1 or 2 here: ")
  
  if choice == 1:
      
      while True:

          print "\n\nPlease select a shape:"
          print
          print "1: area of sircle"
          print "2: area of rectangle"
          print "3: area of square"
          print "4: volum of sylinder"
          print "5: volum of prism"
          print "6: volum of dice\n"

          shape = input ("Type in 1, 2, 3, 4, 5 or 6 here: ")
          print 
          
          if shape == 1:
              circle()
              break
          
          elif shape == 2:
              rectangle()
              break
          
          elif shape == 3:
              square()
              break

          elif shape == 4:
              sylinder()
              break

          elif shape == 5:
              prism()
              break

          elif shape == 6:
              dice()
              break
              
          else:
              print "That is not a valid number. Please try again."
          
  elif choice == 2:
      print "\nGood bye!"
      break
      
  else:
      print "\nThat is not a valid number. Please try again."

 

 

 

Nå gjenstår bare en ting: Å lage et design til programmet og deretter gjøre det om til en .exe fil. Jeg ønsker å gjøre programmet tilgjengelig uten å måtte ha IDLE. Hvordan gjør jeg det? Og det aller viktigste: Hvordan lager jeg et design til programmet mitt?

Endret av chipmann
Lenke til kommentar

Det funka bra det der. :)

 

Å lage design, vinduer og knapper og slikt, tror jeg kanskje er litt for vanskelig i starten. Du bør heller prøve å lage flere lignende programmer som det over først.

 

Det er disse to guidene jeg har brukt mest:

http://www.byteofpython.info/read/index.html

http://www.ibiblio.org/obp/thinkCSpy/

 

 

For å lage en .exe av programmet så kan du bruke http://www.py2exe.org/ du finner installere nedert på sida.

Når du har installert det, så lager du en mappe som du putter python fila di i.

Og så må du lage en setup.py i samme mappe, den skal se omtrent slik ut:

# setup.py
from distutils.core import setup
import py2exe

setup(
   # The first three parameters are not required, if at least a
   # 'version' is given, then a versioninfo resource is built from
   # them and added to the executables.
   version = "1.0",
   description = "a program made for calculation of area and volum",
   name = "Area and Volum",

   # targets to build
   console = ["volumandareal.py"]  # navnet på python fila di. 
   )

Og så bruker du cmd og går til den mappen du har laget. Og så skriver du "python setup.py py2exe"

Da blir det laget to nye mapper, build og dist, du finner programmet ditt i dist.

 

Her står det hvilke av filene du trenger http://starship.python.net/crew/theller/moin.cgi/Py2Exe

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...