【レビュー】
2008年12月3日(オランダ時間)、プログラミング言語Pythonの最新版となるPython 3.0が公開された。3.0は意図的に後方互換性が失われた初のバージョン。これまでのリリースよりも多くの変更が実施されており、すべてのPythonユーザに影響がある。しかし言語仕様が大幅に変更されたわけではない。これまで問題視されていた部分が変更されたといったもので、以前のバージョンよりも言語としての一貫性は向上している。以降で2系と3系の違いで特に注目されるポイントをかいつまんで紹介する。
|
|
Python Programming Language |
最も目につく変更はprint命令がprint関数へ変更されたことだ。3.0ではprint命令は提供されていない。出力するにはprint関数を使う必要がある。表記方法が関数の文法に変わっているほか、ソフトスペース機能もなくなっている。次にPython 2.5で動作する表記と3.0の表記例を示す。
#!/usr/bin/env python2.5
import sys
# 1. common print style
print "1 + 1 = ", 1+1
# 2. newline
print "not new line",
print
# 3. stderr
print >>sys.stderr, "fatal error"
# 4. brancket
print (10, 20)
#!/usr/bin/env python3.0
import sys
# 1. common print style
print("1 + 1 = ", 1+1)
# 2. newline
print("not new line", end=" ")
print()
# 3. stderr
print("fatal error", file=sys.stderr)
# 4. brancket
print ((10, 20))
% ./print30.py
1 + 1 = 2
not new line
fatal error
(10, 20)
%
主な違いは次のとおり。
よく使う命令だっただけにこの変更はユーザに印象強く残るが、それほど心配する変更ではない。移行用の2to3スクリプトを使うことでprint命令を自動的にprint関数に置き換えることが可能だし、関数になったことでプログラミング言語としての一貫性が向上して従来よりもすっきりしているからだ。なれてしまえば違和感を抱くこともない。
| 理研、脳・脊髄形成に必要な神経板湾曲の仕組みを解明 [20:16 5/25] |
| 京大、「慢性閉塞性肺疾患」患者の労作時呼吸困難は鍼治療が有効と実証 [20:08 5/25] |
| 120Hz SHVカメラ用イメージセンサーを使った撮像装置 - SHVフルスペック化へ [18:10 5/25] |
| 京大、視覚による物体認知は前頭前野からのトップダウン信号が重要と確認 [17:45 5/25] |
| 製品数の拡大だけでなくBCPの展開なども含めた総合力で事業の強化を図るTI [17:25 5/25] |
|
エヴァンゲリオンレーシング、今年も鈴鹿8耐出場! 1,000人分の応援席も [00:30 5/27] ライフ |
|
「ガンスリ」10周年で大王付録にヘンリエッタフィギュア [22:22 5/26] ホビー |
|
【特集】クライマックス突入記念! 『Fate/Zero』の舞台裏に迫る!! [22:00 5/26] ホビー |
|
竹宮ゆゆこ×カスカベアキラ「エバーグリーン」1巻刊行 [21:59 5/26] ホビー |
|
最もセクシーな男性「メン・オン・ファイア」21人をAARP誌が発表 [21:30 5/26] エンタメ |
4つの診断で、自分の適性を見つめなおそう!
働くこと・挑戦し続けることへの思いを綴ったインタビュー
あなたにピッタリのアドバイスを読むことができます。
転職に必要な情報が収集できます
企業からアプローチのメッセージが届きます。