Tästä sisältöön

Kiel savi program-kodojn en Terminal (Fedora) ?

Demian :lta, 21. huhtikuuta 2012

Viestejä: 15

Kieli: Esperanto

Hyperboreus (Näytä profiilli) 23. huhtikuuta 2012 19.20.52

Forigite

Lom (Näytä profiilli) 24. huhtikuuta 2012 13.39.02

Kial ne simple uzi "+" kaj "str()"?
Ekzemple: '2 + 2 = ' + str(4)

Mi trovas ĝin pli legebla. Format mi ne multe uzis ĝis nun (fakte mi daŭre lernas pitonon, kaj pro skriptoj en Blender 2.49, daŭre uzas python2.x, sed ja provas pasi al python3.x.), kaj ĝi ŝajnas al mi ĉefe utila por pli bone formatigi nombrojn.

Pri __repr__ mi tute ne sciis. Mi ĉiam uzis __str__. Jen pli da informoj pri tio: http://stackoverflow.com/questions/1436703/differe...(angla).

Jen alia ekzemplo:
#! /usr/bin/env python3
# -*- coding: utf-8 -*-
# Vidu http://stackoverflow.com/questions/1436703/differe... por la malsameco inter __str__ kaj __repr__

class Hundo:
_def __init__ (self, nomo, agxo):
__self.nomo = nomo
__self.agxo = agxo

_def __repr__ (self):
__return 'repr: Tiu ĉi hundo nomatas "{}" kaj estas {}-aĝa.'.format(self.nomo, self.agxo)
_#def __str__ (self):
__#return 'str: Tiu ĉi hundo nomatas "{}" kaj estas {}-aĝa.'.format(self.nomo, self.agxo)

spike = Hundo ('Spike', 4)

print(spike)
print ('Kun funkcio format: {}'.format (spike) )
print ('Kun operatoro + : ' + str(spike))
Se vi malkomentas la __str__ funkcion, ĝi uzos ĝin anstataŭ __repr__ en "print(spike)".

P.S.: Mi pli ofte aŭdis "4-jaraĝa" anstataŭ "4-aĝa". Sed mi certas pri la plej korekta versio nun. Mi devus labori anstataŭ ol forumumi. ^^'

Hyperboreus (Näytä profiilli) 24. huhtikuuta 2012 18.06.10

Forigite

Lom (Näytä profiilli) 25. huhtikuuta 2012 10.59.11

Interesege, mi ne sciis pri la uzo de "*" por krei argumentliston ĝis nun. Tio povus esti ege utila. Dankon. ridulo.gif

[ Pri Esperanto, mi pensas ke devus esti 'La {} {} saltas super {}.' , ĉu ne? ]

Hyperboreus (Näytä profiilli) 25. huhtikuuta 2012 21.07.35

Forigite

Takaisin ylös