Ajatus C++:n ja Pythonin eroista

PTRW

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

10

163

    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ä.

    Luetuimmat keskustelut

    1. Aivosyöpää sairastava Olga Temonen TV:ssä - Viimeinen Perjantai-keskusteluohjelma ulos

      Näyttelijä-yrittäjä Olga Temonen sairastaa neljännen asteen glioomaa eli aivosyöpää, jota ei ole mahdollista leikata. Hä
      Maailman menoa
      80
      2799
    2. Pelotelkaa niin paljon kuin sielu sietää.

      Mutta ei mene perille asti. Miksi Venäjä hyökkäisi Suomeen? No, tottahan se tietenkin on jos Suomi joka ei ole edes soda
      Maailman menoa
      293
      1610
    3. Mikä saa ihmisen tekemään tällaista?

      Onko se huomatuksi tulemisen tarve tosiaan niin iso tarve, että nuoruuttaan ja tietämättömyyttään pilataan loppuelämä?
      Sinkut
      246
      1517
    4. Minkä merkkisellä

      Autolla kaivattusi ajaa? Mies jota kaipaan ajaa Mersulla.
      Ikävä
      87
      1361
    5. IL - VARUSMIEHIÄ lähetetään jatkossa NATO-tehtäviin ulkomaille!

      Suomen puolustuksen uudet linjaukset: Varusmiehiä suunnitellaan Nato-tehtäviin Puolustusministeri Antti Häkkänen esittel
      Maailman menoa
      401
      1339
    6. Nyt kun Pride on ohi 3.0

      Edelliset kaksi ketjua tuli täyteen. Pidetään siis edelleen tämä asia esillä. Raamattu opettaa johdonmukaisesti, että
      Luterilaisuus
      396
      1273
    7. Esko Eerikäinen tatuoi kasvoihinsa rakkaan nimen - Kärkäs kommentti "Ritvasta" lävähti somessa

      Ohhoh! Esko Eerikäinen on ottanut uuden tatuoinnin. Kyseessä ei ole mikä tahansa kuva minne tahansa, vaan Eerikäisen tat
      Suomalaiset julkkikset
      38
      1017
    8. Kiitos nainen

      Kuitenkin. Olet sitten ajanmerkkinä. Tuskin enää sinua näen ja huomasitko, että olit siinä viimeisen kerran samassa paik
      Tunteet
      2
      979
    9. Hyväksytkö sinä sen että päättäjämme ei rakenna rauhaa Venäjän kanssa?

      Vielä kun sota ehkäpä voitaisiin välttää rauhanponnisteluilla niin millä verukkeella voidaan sanoa että on hyvä asia kun
      Maailman menoa
      329
      854
    10. Miksi Purra-graffiti ei nyt olekkaan naisvihaa?

      "Pohtikaapa reaktiota, jos vastaava graffiti olisi tehty Sanna Marinista", kysyy Tere Sammallahti. Helsingin Suvilahden
      Maailman menoa
      254
      832
    Aihe