[解決済み] Pythonでポインタ?
2022-03-02 23:09:48
質問
Pythonにポインタがないことは知っていますが、このような降伏をさせる方法はありますか?
2
代わりに
>>> a = 1
>>> b = a # modify this line somehow so that b "points to" a
>>> a = 2
>>> b
1
?
以下はその例です。例えば
form.data['field']
と
form.field.value
を常に同じ値にする。完全に必要というわけではありませんが、いいことだと思います。
例えばPHPでは、こんなことができるんです。
<?php
class Form {
public $data = [];
public $fields;
function __construct($fields) {
$this->fields = $fields;
foreach($this->fields as &$field) {
$this->data[$field['id']] = &$field['value'];
}
}
}
$f = new Form([
[
'id' => 'fname',
'value' => 'George'
],
[
'id' => 'lname',
'value' => 'Lucas'
]
]);
echo $f->data['fname'], $f->fields[0]['value']; # George George
$f->data['fname'] = 'Ralph';
echo $f->data['fname'], $f->fields[0]['value']; # Ralph Ralph
出力します。
GeorgeGeorgeRalphRalph
あるいはC++でこのように(これが正しいと思うのですが、私のC++は錆びついています)。
#include <iostream>
using namespace std;
int main() {
int* a;
int* b = a;
*a = 1;
cout << *a << endl << *b << endl; # 1 1
return 0;
}
解決方法は?
その行だけ変えてもできるわけがない。 できるのは
a = [1]
b = a
a[0] = 2
b[0]
これはリストを作成し、aに参照を割り当て、次にbにも参照を割り当て、aの参照を使用して最初の要素を2に設定し、次にbの参照変数を使用してアクセスするものです。
関連
-
Python カメの描画コマンドとその例
-
pythonサイクルタスクスケジューリングツール スケジュール詳解
-
[解決済み】TypeError: unhashable type: 'numpy.ndarray'.
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonで2つのリストを連結する方法は?
-
[解決済み] ファイルのコピー方法について教えてください。
-
[解決済み] Pythonで例外を手動で発生(スロー)させる
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Python機械学習Githubが8.9Kstarsに達したモデルインタープリタLIME
-
Python interpreted model libraryによる機械学習モデル出力の可視化 Shap
-
Python入門 openを使ったファイルの読み書きの方法
-
任意波形を生成してtxtで保存するためのPython実装
-
[解決済み】RuntimeWarning: 割り算で無効な値が発生しました。
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み】インポートエラー。モジュール名 urllib2 がない
-
[解決済み】NameError: 名前 'self' が定義されていません。
-
[解決済み】Flaskのテンプレートが見つからない【重複あり
-
[解決済み】ValueError: xとyは同じサイズでなければならない