[過去ログ] 【まず1嫁】くだすれPython(超初心者用) その59 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
997
(1): デフォルトの名無しさん [sage] 2024/09/01(日) 14:38:13.87 ID:MnUgJTxK(1/2) AAS
元レスの主張をそのままリスペクトすると
ctypes の POINTER が超お薦め
998: デフォルトの名無しさん [sage] 2024/09/01(日) 15:14:54.96 ID:MnUgJTxK(2/2) AAS
>>990
990(2): 勉強スレ誤爆より質問スレに移動 [sage] 2024/08/31(土) 13:26:42.65 ID:fwQH707u(1/4) AAS
関数やクラスにインデックスの指す中身の値でなく“インデックス指定”を渡したいのですがうまく出来ません
こんな場合どういうような考え方があるのでしょう(タプルでインデックス数字を渡す?)

# [[0,0,0,0,0],[[0,0,0,0,0]]
alist = [[0]*5]*2

# 値ではなく箱の位置を意図してるが…
hako = alist[0][3]

def change(b):
b = 3
return

change(hako)

print(alist) # 全部0のまま

change(alist[0][4])

print(alist) # こちらも全部0

実際にはrpgゲームの様々のステートやフラグやそのセーブを管理するクラスに
alist[6][15](王さまと喋ったとか)を1にするといった仕事をさせたいと試行錯誤しています
喋る関数、戦う関数やクラスのとこから発生しだいリストを直で操作すればいいのだけど
State.change(インデックス, 1)みたく一元的にやりたいとクラスを作ってきています
目的で位置の固定されたフラグなのでメニューを開いているかState.menu(1)、State.kingtalked(1)などとしその先のクラスの関数で位置を決め撃ちするのが良いのかななどと困って考えています
外部リンク:paiza.io

import ctypes

def a(p):
p.contents.value = 3

x = [[ctypes.c_uint32(j * 3 + i + 1) for i in range(3)] for j in range(3)]
print(x)
a(ctypes.pointer(x[1][1]))
print(x)

# [[c_uint(1), c_uint(2), c_uint(3)], [c_uint(4), c_uint(5), c_uint(6)], [c_uint(7), c_uint(8), c_uint(9)]]
# [[c_uint(1), c_uint(2), c_uint(3)], [c_uint(4), c_uint(3), c_uint(6)], [c_uint(7), c_uint(8), c_uint(9)]]
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.128s*