私は Python を初めて使用し、cx_Oracle
モジュールを使用していくつかのデータベース コードを作成しています。cx_Oracleのドキュメントには、次のようなコード例があります。
import sys
import cx_Oracle
connection = cx_Oracle.Connection("user/pw@tns")
cursor = connection.cursor()
try:
cursor.execute("select 1 / 0 from dual")
except cx_Oracle.DatabaseError, exc:
error, = exc.args
print >> sys.stderr, "Oracle-Error-Code:", error.code
print >> sys.stderr, "Oracle-Error-Message:", error.message
私の質問は、「エラー」オブジェクトが作成される場所に関係しています。「, =
」は何をしますか? Python のドキュメントを検索してみましたが、演算子を検索するときに検索エンジンがうまく機能しません。:-)
exc.args がシングルトン タプルであることはわかっていますが、" , =
" 構文がわかりません。カンマを削除すると、エラー メッセージ " AttributeError: 'tuple' object has no attribute 'code'
" が表示されます。
誰かがこれが文書化されている場所を教えてもらえますか? ありがとう!
編集:
これは、タプルをアンパックしなくても機能します。
import sys
import cx_Oracle
connection = cx_Oracle.Connection("user/pw@tns")
cursor = connection.cursor()
try:
cursor.execute("select 1 / 0 from dual")
except cx_Oracle.DatabaseError, exc:
print >> sys.stderr, "Oracle-Error-Code:", exc.args[0].code
print >> sys.stderr, "Oracle-Error-Message:", exc.args[0].message