Belajar Python Dadakan

Lagi ngecek-ngecek harddisk kemarin nemu Instalasi Python 2.5. Sepertinya dulu ada karena supaya mendukung blender. Akhrinya penasaran ingin coba mrogram.

Dimulai dari mendownload paket-paket yang mungkin digunakan untuk keperluan sehari-hari (pygame, numpy, pyOpenGL, PIL). Kemudian dilanjutkan dengan mencari IDE untuk mengelola project yang menggunakan python. tadinya hanya mengandalkan Notepad2 dan sudah cukup (untuk syntax highlighting). Ternyata di perjalanan nemu bahwa ada plugin eclipse untuk python. hwahaha.. berita yang cukup menggembirakan karena nggak perlu lagi instal IDE baru.

Setelah selesai melakukan instalasi paket telor python.. (hehe.. sebenernya yang diinstalasi yang .exe sih..😛, tapi merasa lucu juga klo pemaketan ekstensinya pakai istilah telur (.egg)), dilanjutkan dengan mencoba-coba contoh kode (mulai dari pyOpenGL)

Duh, nggak mau jalan.
setelah dijalankan dalam mode konsol, ternyata ada file yang nggak ketemu namanya pkg_resources. *garuk-garuk*

Karena nggak ngerti jadinya coba cari-cari di direktori yang bersangkutan (site-packages/OpenGL) dan ternyata file tersebut memang tidak ada. *mulai panik..*

coba-coba membuat sendiri isi file tersebut. tapi ternyata gagal (atribut kelas nggak ketemu setelah import module). oh well, akhirnya terpaksa diakalin load manual

di file OpenGL/platform/__init__.py jadi begini

def _findPlatform( platform ):
	#"""Find platform implementation by name"""
	#for entrypoint in pkg_resources.iter_entry_points(
	#	"OpenGL.platform.implementation"
	#):
	#	
	#	if entrypoint.name == platform:
	#		print "found", entrypoint.name
	#		return entrypoint.load()
	#raise RuntimeError(
	#	"""Unable to find an implementation for the %r platform (os.name)"""%(
	#		platform,
	#	)
	#)
	from win32 import Win32Platform
	return Win32Platform


di file OpenGL/arrays/formathandler.py jadi begini

def loadModule( cls, plugin_class, ename ):
		handler = plugin_class()
		handler.register( handler.HANDLED_TYPES )
		cls.HANDLER_REGISTRY[ ename ] = handler
		if hasattr( handler, 'zeros' ):
			cls.ALL_OUTPUT_HANDLERS.append( handler )
	loadModule = classmethod( loadModule )
	def loadAll( cls ):
		"""Load all setuptools-registered FormatHandler classes
		
		register a new datatype with code similar to this in your
		package's setup.py for setuptools:
		
		entry_points = {
			'OpenGL.arrays.formathandler':[
				'numpy = OpenGL.arrays.numpymodule.NumpyHandler',
			],
		}
		"""
		from OpenGL.arrays.ctypesarrays import CtypesArrayHandler
		cls.loadModule(CtypesArrayHandler, 'CtypesArrayHandler')
		from OpenGL.arrays.ctypesparameters import CtypesParameterHandler
		cls.loadModule(CtypesParameterHandler, 'CtypesParameterHandler')
		from OpenGL.arrays.nones import NoneHandler
		cls.loadModule(NoneHandler, 'NonesHandler')
		from OpenGL.arrays.lists import ListHandler
		cls.loadModule(ListHandler, 'ListHandler')
		from OpenGL.arrays.ctypespointers import CtypesPointerHandler
		cls.loadModule(CtypesPointerHandler, 'CtypesPointerHandler')
		from OpenGL.arrays.numbers import NumberHandler
		cls.loadModule(NumberHandler, 'NumberHandler')
		from OpenGL.arrays.numpymodule import NumpyHandler
		cls.loadModule(NumpyHandler, 'NumpyHandler')
		from OpenGL.arrays.strings import StringHandler
		cls.loadModule(StringHandler, 'StringHandler')
		#for entrypoint in pkg_resources.iter_entry_points(
		#	"OpenGL.arrays.formathandler"
		#):
		#	try:
		#		entrypoint()
		#		raise RuntimeError( 
		#				entrypoint
		#		)
		#		plugin_class = entrypoint.load()
		#	except ImportError, err:
		#		from OpenGL import logs
		#		log = logs.getLog( 'formathandler' )
		#		log.info( 
		#			'Unable to load registered array format handler %s:\n%s', 
		#			entrypoint.name, log.getException( err )
		#		)
		#	else:
		#		handler = plugin_class()
		#		handler.register( handler.HANDLED_TYPES )
		#		cls.HANDLER_REGISTRY[ entrypoint.name ] = handler
		#		if hasattr( handler, 'zeros' ):
		#			cls.ALL_OUTPUT_HANDLERS.append( handler )
	loadAll = classmethod( loadAll )


hehe.. akhirnya jalan juga.. walaupun di beberapa contoh sering terjadi Exception di GLUT loop handler.. duh, gatau lagi deh.. waktu liat jam, ternyata sudah jam setengah 2 pagi..😛 jadi ngantuk..

8 comments

  1. iang · Maret 17, 2008

    asik kan python?😀

  2. pedrosa · November 16, 2008

    permisi mas boss kyknya jago phyton nih…,gue lagi belajar programmer denger2
    phyton cocok buat pemula, mas boss punya tutor nya gak bagi donk…

  3. ade murti · Januari 5, 2009

    Mas, saya udah coba programming dari wxpython di ubuntu 8.04, ada gak ya compilernya agar klo program yang kita buat bisa jalan juga di linux lainnya?? kan katany cross platform tu python.. TQ.

  4. dani · Mei 31, 2010

    ia bang ada ngaa tutorial puat awam???
    klo sempet balas ke email _bajay_2010@yahoo.com _ya thnks bang:D

  5. toto · Maret 8, 2011

    python emang handal sih. temen2 banyak yang pakai. hii.hik…pengen sih mempelajari. tapi dah terlalu sibuk ama bahasa yang lain. makasih mas atas tulisannya. jd ada tambahan ilmu gimana itu bahasa python

  6. Cyntia · Maret 12, 2011

    saya juga baru belajar pythin baru aja googling dan nemu ini http://www.master.web.id/mwmag/issue/01/content/tutorial-python-1/tutorial-python-1.html

  7. benx08 · September 19, 2011

    si agan ngantuknya gara2 liat jam ya? akakakak

  8. Jack · Oktober 17, 2011

    Sip itulah python! sangat gampang bukan? semoga semua bisa mempelajarinya. Amin n jgn gampang menyerah y semua!

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s