PythonistaのCustom Attributeでハマったところ


CustomAttributeにアクセスしたらエラー

PythonistaでUIとしてtextfieldを追加し、それに付与したCustomAttributeにアクセスしたところ、以下のようなエラーメッセージが表示されました。

CustomAttribute(NG)
{‘attr‘:‘value‘}
action.py
def action(sender):
   print(sender.attr)
console
Warning: could not load custom attributes of view "CustomAttributeの名前": invalid character in identifier

原因

Pythonのコードを含めて、外部キーボードからの入力をしていたのですが、Pythonのエディタ上では問題ない'(シングルクォーテーション)の入力が、CustomAttributeを入力するinspector上だと‘(引用符?)となってしまうのが原因でした。
とりあえず、外部キーボードからではなく、スクリーンキーボードから入力することにより対処しました。

CustomAttribute(OK)
{'attr':'value'}

根本的な問題

iOSのスマート句読点という機能のせいでした。
設定から変更したらば、外部キーボードからでも正常に入力できるようになりました。

参考

https://forum.omz-software.com/topic/2663/syntax-inside-the-custom-attributes-section/11
https://getnavi.jp/business/247123/