Vinnaren i pepparkakshustävlingen!
  • 1
  • 2
2011-08-05, 14:40
  #1
Medlem
gavlips avatar
Jag funderar på att lära mig Python. Varför är python så bra enligt er som håller på med det?

Har ni några bra pappersböcker om Python som ni skulle kunna rekommendera? E-böcker?
Citera
2011-08-05, 14:45
  #2
Avstängd
RebeccaBlacks avatar
Jag vet inte vad som är bra med Python men det är lätt och det ger goda förkunskaper för Perl och Ruby. Jag lär mig 3 språk samtidigt just för de liknar varandra.
Själv rekommenderar jag skarp Ruby framför Python.
Men ja, för det är lätt.
Citera
2011-08-05, 15:02
  #3
Medlem
gavlips avatar
Men varför Ruby framför Python? Ser du samma fördelar med det även om man inte sysslar med webbutveckling?
Citera
2011-08-05, 15:09
  #4
Avstängd
RebeccaBlacks avatar
Citat:
Ursprungligen postat av gavlip
Men varför Ruby framför Python? Ser du samma fördelar med det även om man inte sysslar med webbutveckling?
Det var en svår fråga. Men Python känns så rått för mig, det är svårt att förklara men det känns som det är mycket att hålla koll på. Ruby däremot känns vänligare och enklare. Jag vill inte gå in på detaljer på vad jag menar för det skulle nog förvirra dig, hehe.

Jag tycker du ska välja Python framför Ruby, absolut för Python har en ljusare framtid och fler och fler sysslar med det. Ruby har haft sin tid.. Om du inte ska hålla på med webbutveckling så är Python de du ska lära dig.
Citera
2011-08-05, 15:57
  #5
Medlem
Det är intuitivt, stilrent och expressivt. Samtidigt inskränker inte enkelheten på möjligheterna, snarare tvärt om. När man kommer in i python skriver man kod väldigt snabbt. Det gedigna bibliotek som medföljer är inte fy skam heller.
Citera
2011-08-05, 16:42
  #6
Medlem
Rynes avatar
Gillar Python för man behöver inte använd Curly brackets och att koden är stilrent.
Sedan har många av de stora sidorna egna bibliotek av sina API i Python.
Citera
2011-08-05, 21:05
  #7
Medlem
Bitmasters avatar
Jag gillar Python för att det använder indentering istället för curly brackets. Jag använder det även för att det är intuitivt. Om det är något jag undrar hur man gör, ställer jag mig bara frågan "hur skulle jag själv ha implementerat det?", testar, och givetvis är det precis så man gör.
Citera
2011-08-06, 00:43
  #8
Medlem
gavlips avatar
Jag har hittat py2exe som gör det möjligt att göra executables från pythonkod. Förtjusande.
Citera
2011-08-06, 02:42
  #9
Medlem
Luciditys avatar
Jag har spenderat mycket tid på python de senaste dagarna, är nybörjare. Jag gillar att den går efter indenteringar istället för { måsvingar } för att visa var saker början och slutar. Det är lite ovant för mig som är van med java att se var koden slutar men man vänjer sig väl. Tycker det är mycket smartare än att has måsvingar.

Att man kan dela upp strängar genom namn[4:] till exempel är smidigare än substring som de flesta (?) språk använder sig av.

Det jag tycker är jobbigt är att man måste ha med (self) i alla funktioner man gör i en klass och att behöva skriva self.__namn för att använda en privat variabel.
Citera
2011-08-06, 23:36
  #10
Medlem
Att koden är så ren och "alla" gör lika.
Det finns inget
Kod:
while(1) {
vs
Kod:
while(1)
{
Eftersom det bara finns ett sätt att göra det på. (Väldigt trevligt när du kollar på andras kod.

Biblioteket, det är stort, enkelt och väldigt kraftfullt.

Och många anda saker. Det är ett språk som är nytt och man har därför kunnat utvärdera gamla språk som c och därmed är många störelsepunkter borta. Det bara funkar.
Citera
2011-08-08, 10:14
  #11
Moderator
vhes avatar
Jag gillar Python p.g.a.:
- Avsaknad av "visual noise" i form av onödiga paranteser och skit.
- Late binding
- Duck typing
- PEP-20
- Snabba iterationscykler (minns när jag gick från en Javamiljö där det tog ca 30 minuter innan jag fick reda på om min kodfix funkat, till en Pythonmiljö där det tog ca 3 sekunder (och ja, jag vet att det är ett extremt exempel och att det inte behöver vara så illa i Java...))

Jag ogillar Python p.g.a.:
- "Batteries included" är jävligt klena batterier. Ofta är standardimplementationerna väldigt bristfälliga, och behöver kompletteras/ersättas så fort man gör något som är det minsta avancerat (något som iofs stämmer får många andra språk också - det är mest den falska marknadsföringen som irriterar mig)
- Dokumentationen suger (den ryktas iofs ha blivit bättre i 3.x)
- Alla jävlar som skriver pythonbibliotek tror de är världens bästa programmerare och verkar tycka att det är för enkelt att skriva "import foo", utan istället måste ha tvåhundra rader import-magi som dynamiskt slår upp moduler baserat på månens fas
- setuptools, distutils, .egg-filer och hela den jävla oanvändbara sörjan (kanske bättre nu i pip-tider, jag vet faktiskt inte)

När jag läser min note inser jag att man nog kan sammanfatta det som att jag tycker väldigt mycket om språket men mindre om allt jox runt omkring det - standardbibliotek, hantering av extrabibliotek, &c. Det finns tyvärr ingen bra Python-motsvarighet till Apache & dyl.
Citera
2011-08-12, 20:46
  #12
Medlem
Rizados avatar
Lätt att strukturera och att prototypa i. Älskar att man kan börja med små hårdkodade testmoduler för att gå vidare till mer användbara program för att sedan optimera flaskhalsar i andra språk utan att någonsin egentligen slänga allt och börja om på ruta ett. Mjukvaran växer fram nästan av sig själv

Har för övrigt gått över till IPython med sh mode som shell i terminalen istället för bash. Hur underbart är det inte att bara kunna langa upp sin terminal och plocka ut utdata från vilket program som helst, importera matplotlib och plotta skiten. Hur awesome är inte det här?

Kod:
foo@bar:~$ from matplotlib.pyplot import *
foo@bar:~$ rpm = []
foo@bar:~$ t = range(1000)
foo@bar:~$ for i in t:
          ...     sleep 0.1
          ...     x = !sensors
          ...     rpm.append(int(x.grep('CPU_FAN')[0].split()[1]))
          ...
foo@bar:~$ plot(t, rpm); xlabel('time'); ylabel('rpm'); show()

http://data.fuskbugg.se/skalman02/4e...c7_CPU_FAN.png
Citera
  • 1
  • 2

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback