質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

解決済

pythonで大かっこの左に文字がくるときの使い方が知りたいです。

tomomonX
tomomonX

総合スコア27

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

2回答

0評価

0クリップ

303閲覧

投稿2022/03/17 13:59

前提

pythonで大かっこの使い方が知りたいです。
大かっこはリストで使うという認識です。

参考
https://www.tohoho-web.com/python/list.html

実現したいこと

label[y, x]

という感じの大かっこの左に文字がくる場合の大かっこの意味を知りたいです。
以下のサイトで勉強中に出てきたので私の知っている使い方に該当しなかったため、気になりました。
https://github.com/yoyoyo-yo/Gasyori100knock/tree/master/questions/question_51_60#q55-%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%83%9E%E3%83%83%E3%83%81%E3%83%B3%E3%82%B0-sad

該当のソースコード

python

def labeling_4nn(img): h, w = img.shape label = np.zeros((h, w), dtype=int) label[img > 0] = 1 # look up table LUT = [0 for _ in range(h * w)] n = 1 for y in range(h): for x in range(w): # skip black pixel if label[y, x] == 0: continue # get above pixel c3 = label[max(y-1,0), x] # get left pixel c5 = label[y, max(x-1,0)] # if not labeled if c3 < 2 and c5 < 2: # labeling n += 1 label[y, x] = n else: # replace min label index _vs = [c3, c5] vs = [a for a in _vs if a > 1] v = min(vs) label[y, x] = v minv = v for _v in vs: if LUT[_v] != 0: minv = min(minv, LUT[_v]) for _v in vs: LUT[_v] = minv count = 1 # integrate index of look up table for l in range(2, n+1): flag = True for i in range(n+1): if LUT[i] == l: if flag: count += 1 flag = False LUT[i] = count # draw color COLORS = [[0, 0, 255], [0, 255, 0], [255, 0, 0], [255, 255, 0]] out = np.zeros((h, w, 3), dtype=np.uint8) for i, lut in enumerate(LUT[2:]): out[label == (i+2)] = COLORS[lut-2] return out out = labeling_4nn(img_seg) plt.subplot(1, 2, 1) plt.title("input") plt.imshow(img_seg, cmap="gray") plt.subplot(1, 2, 2) plt.title("output") plt.imshow(out) plt.show()

試したこと

下記URLで調べました。かっこの左に文字がくるパターンがなかったです。
https://www.tohoho-web.com/python/list.html

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。