Ajatus C++:n ja Pythonin eroista

PTRW

"C :lla ohjelmoidessani olen Jumala. Pythonilla ohjelmoidessani komennan Jumalia."

10

248

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • jumalakomennuskunta

      Ja sitten esimies, märkäkorvainen insinörtti, käskee sinua, jumalten komentajaa, nöyrästi tarttumaan Visual Basiciin ja vääntämään koodia sillä.

    • just_koodaaja

      Oon koodannu yli 20v eri kielillä. En tunne olevani Jumala. Kauanko PTRW on koodannu työkseen. Varmaan ei ollenkaan, kun puhuu noin pehmosia...

    • oikeintietäjäenole

      Haha minä olen vieläkin kauemmin, aloitin assembly-ohjelmoinnin jo Spectravideo 328:lla ja Z80A-prosessorilla, tuossa oli Microsoft BASIC 1.0 asennettuna tuossa kyllä.

    • K0uderi-70-luvulta

      Huh, samoihin aikoihin aloitettu koodailu. Joskin nykyjään koodailen mieluiten juuri Pythonilla. Tietysti myös CoffeeScriptiä, Rubyä ja Luaa pitää vilkuilla.

    • fgdsthfdsfgd

      perlillä kun ohjelmoi, on pappi ja jumala. jumala luo olion, mutta pappi joutuu sen siunaamaan.
      dog bless america!

    • pöntön pyyttoni

      Tää on niin hyvä keskustelualue kun kaikki on aina aiheessa mukana :)

      No, oli tylsää niin testailin tuota python 3.3:sta ja värkkäilin jotain kakkaa pelikorttien muodossa. jospa tästä on jollekin jotain iloa joko hyvässä tai pahassa niin hyvä. Kommentteja ei kovin paljoa ole, mutta ehkä siitä jotain selvää saa. Toimii python 2.4 -> 3.3 asti - muita en testannut. Tällaisenaan tästä ei paljoa käytännön hyötyä ole, mutta siitä voi joku jatkaa korttipelin jos kiinnostaa

      Toivotaan että tämä copypaste kikkareeni toimii vielä suomi24:ssä ja ei mene sivu täysin lukukelvottomaksi - jos meni niin anteeksi kovasti optimistisuudestani

      PAH - suomi24:n mielestä liian pitkä joten joutuu paloittelemaan!

      #!/usr/bin/python
      # -*- coding: utf-8 -*-
      import random

      class Card(object):
          """A Basic Card"""
          SUITS = ['Hearts', 'Diamonds', 'Clubs', 'Spades']
          VALUES = ['', 'Ace', 'Two', 'Three', 'Four', 'Five', 'Six', 'Seven',
                    'Eight', 'Nine', 'Ten', 'Jack', 'Queen', 'King']

          def __init__(self, suit, value):
              self._suit = suit
              self._value = value
              
          def __str__(self):
              return '%s of %s' % (Card.VALUES[self._value],
                                    Card.SUITS[self._suit])
          def __repr__(self):
              return '%s(%s)' % (self.__class__.__name__, str(self))
          
      class FaceCard(Card):
          """A Face Card"""
          pass

      class NumberCard(Card):
          """A Card numbered from 2 to 10"""
          pass

      class AceCard(Card):
          """An Ace"""

      class CardFactory(object):
          """A simple Card factory"""
          @staticmethod
          def create_card(suit, value):
              if value == 1:
                  return AceCard(suit, value)
              elif value >= 2 and value = 11 and value 

      • pöntön pyyttoni

        # sort types
        def suit_then_value(cards, reverse=False):
            cards.sort(key=lambda card: (card._suit, card._value), reverse=reverse)
        def value_then_suit(cards, reverse=False):
            cards.sort(key=lambda card: (card._value, card._suit), reverse=reverse)

        class Hand(object):
            def __init__(self, cards, sort_strategy=suit_then_value):
                self._sort_strategy = sort_strategy         
                self._cards = cards
                
            def sort(self):
                self._sort_strategy(self._cards)                      
                
            def __str__(self):        
                return 'Hand: '  ', '.join((str(card) for card in self._cards))
         

        class Deck(object):
            """Deck of Cards"""
            def __init__(self, factory=CardFactory,
                         shuffle_strategy=random.shuffle,
                         sort_strategy=suit_then_value):
                self._shuffle_strategy = shuffle_strategy
                self._sort_strategy = sort_strategy
                self._cards = []        
                for suit in range(4):
                    for value in range(13):
                        self._cards.append(factory.create_card(suit, value 1))

            def shuffle(self):
                self._shuffle_strategy(self._cards)

            def sort(self):
                self._sort_strategy(self._cards)
                
            def deal(self, count):
                cards = []
                for _ in range(count):
                    cards.append(self._cards.pop())
                return Hand(cards)

            def __str__(self):
                return 'Deck: '  ', '.join((str(card) for card in self._cards))
                
        if __name__ == '__main__':
            deck = Deck()

            print ('shuffling deck..')
            deck.shuffle()

            for player in range(4):
                print('dealing five cards to player%d' % player)
                hand = deck.deal(5)
                print(hand)
            
            


      • pöntön pyyttoni
        pöntön pyyttoni kirjoitti:

        # sort types
        def suit_then_value(cards, reverse=False):
            cards.sort(key=lambda card: (card._suit, card._value), reverse=reverse)
        def value_then_suit(cards, reverse=False):
            cards.sort(key=lambda card: (card._value, card._suit), reverse=reverse)

        class Hand(object):
            def __init__(self, cards, sort_strategy=suit_then_value):
                self._sort_strategy = sort_strategy         
                self._cards = cards
                
            def sort(self):
                self._sort_strategy(self._cards)                      
                
            def __str__(self):        
                return 'Hand: '  ', '.join((str(card) for card in self._cards))
         

        class Deck(object):
            """Deck of Cards"""
            def __init__(self, factory=CardFactory,
                         shuffle_strategy=random.shuffle,
                         sort_strategy=suit_then_value):
                self._shuffle_strategy = shuffle_strategy
                self._sort_strategy = sort_strategy
                self._cards = []        
                for suit in range(4):
                    for value in range(13):
                        self._cards.append(factory.create_card(suit, value 1))

            def shuffle(self):
                self._shuffle_strategy(self._cards)

            def sort(self):
                self._sort_strategy(self._cards)
                
            def deal(self, count):
                cards = []
                for _ in range(count):
                    cards.append(self._cards.pop())
                return Hand(cards)

            def __str__(self):
                return 'Deck: '  ', '.join((str(card) for card in self._cards))
                
        if __name__ == '__main__':
            deck = Deck()

            print ('shuffling deck..')
            deck.shuffle()

            for player in range(4):
                print('dealing five cards to player%d' % player)
                hand = deck.deal(5)
                print(hand)
            
            

        esimerkki ulostus..

        shuffling deck..
        dealing five cards to player0
        Hand: Five of Diamonds, Ace of Spades, Queen of Clubs, Three of Hearts, Ace of Clubs
        dealing five cards to player1
        Hand: Two of Clubs, Seven of Spades, Five of Clubs, Seven of Diamonds, King of Clubs
        dealing five cards to player2
        Hand: Six of Clubs, Six of Diamonds, Ten of Diamonds, Eight of Spades, Ace of Hearts
        dealing five cards to player3
        Hand: Three of Spades, Ten of Hearts, Two of Hearts, Nine of Hearts, Two of Spades


      • pntön pyyttoni
        pöntön pyyttoni kirjoitti:

        esimerkki ulostus..

        shuffling deck..
        dealing five cards to player0
        Hand: Five of Diamonds, Ace of Spades, Queen of Clubs, Three of Hearts, Ace of Clubs
        dealing five cards to player1
        Hand: Two of Clubs, Seven of Spades, Five of Clubs, Seven of Diamonds, King of Clubs
        dealing five cards to player2
        Hand: Six of Clubs, Six of Diamonds, Ten of Diamonds, Eight of Spades, Ace of Hearts
        dealing five cards to player3
        Hand: Three of Spades, Ten of Hearts, Two of Hearts, Nine of Hearts, Two of Spades

        mjoo unohtui vielä laittaa kutsu että kädet järjestettäisiin mutta jääköön kotitehtäväsk


      • huh..
        pntön pyyttoni kirjoitti:

        mjoo unohtui vielä laittaa kutsu että kädet järjestettäisiin mutta jääköön kotitehtäväsk

        Aika karseen näköistä tuo Pythonin syntaksi, sama tunne kuin Objective-C:stä tulee mieleen nurinpäin käännetty eläin, suolet ulkona ja turkki sisällä.

        Mutta kait kaikkeen tottuu kun tarpeeksi vääntää?


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Takaisin ylös

    Luetuimmat keskustelut

    1. Suomen kansa haluaa Antti Lindtmanista pääministerin

      Lindtman on miltei tuplasti suositumpi kuin etunimikaimansa Kaikkonen. Näin kertoo porvarimedian teettämä kysely. http
      Maailman menoa
      280
      4733
    2. Vain 21% kannattaa Lindtmania pääministeriksi

      se on selvästi vähemmän kuin puolueen kannatus, mites nyt noin?
      Maailman menoa
      135
      3056
    3. Miksei Björn Wahlroos jaa rahaa köyhille?

      Esimerkiksi Nordean tiloissa? Vai tuovatko ne köyhät hiekkaa marmorilattioille ja siksi ei pysty mursunviiksi pystyyn k
      Maailman menoa
      42
      2918
    4. Jouluksi miettimistä: kuka tai mikä valmistaa rahan?

      Nyt kun on ollut vääntöä rahasta ja eritoten sen vähyydestä, niin olisi syytä uida rahan alkulähteille, eli mistä se syn
      Maailman menoa
      28
      1531
    5. Julkinen sektori on elänyt aivan liian leveästi yli varojensa!

      Viimeisen 15 vuoden aikana julkisen puolen palkat ovat nousseet n. 40%, kun taas yksitysellä sektorilla vain n. 20%. En
      Maailman menoa
      227
      1232
    6. Missä kunnassa kaivattusi asuu

      Kuinka tarkkaa uskalla sanoa?
      Ikävä
      47
      1169
    7. Yksikään persu ei ole saanut Nobelin palkintoa

      Kertoo paljon persujen älyn puutteesta. Demareista mm. Ahtisaari on kyseisen palkinnon saanut.
      Maailman menoa
      7
      976
    8. Emme koskaan keskustelleet kasvotusten syistä välirikollemme

      Enkä voisi kertoa perimmäistä rehellistä syytä. Kerroin sinulle pintapuolisen ”paketin” ja otin tavallaan omalle vastuu
      Ikävä
      58
      961
    9. Paskalaista valokuitulakiin

      Nyt maksajiksi joutuvat kaupunkilaiset eivätkä mökkiensä ulkohuusseissa kakistelevat mummot. Nimittäin EU määrää jokais
      Maailman menoa
      52
      959
    10. Miten antaa merkki hyvin eri ikäiselle miehelle, että kertoisi toiveensa ja ajatuksensa?

      Olen pitkään pitänyt miehestä, joka myös varmasti minusta. Hän ei tosin kerro ihastumisesta, eli voi hyvin olla, että tu
      Ikävä
      78
      931
    Aihe