前往目錄

Kiel savi program-kodojn en Terminal (Fedora) ?

貼文者: Demian, 2012年4月21日

訊息: 15

語言: Esperanto

Hyperboreus (顯示個人資料) 2012年4月23日下午7:20:52

Forigite

Lom (顯示個人資料) 2012年4月24日下午1: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 (顯示個人資料) 2012年4月24日下午6:06:10

Forigite

Lom (顯示個人資料) 2012年4月25日上午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 (顯示個人資料) 2012年4月25日下午9:07:35

Forigite

回到上端