データ構造2
データ構造2
トーン
t = (1, 2, 3, 4, 1, 2)
print(t)
> (1, 2, 3, 4, 1, 2)
print(type(t))
> <class 'tuple'>
デフォルトでは、tupleはカッコ()を使用する必要はありません.
tuple-2、index、slice
t = (1, 2, 3, 4, 1, 2)
t[0] = 100
! error : 문자열처럼 수치변경 지원이 안됨, TypeError: 'tuple' object does not support item assignment, but 다른것들은 다 가능
print(t[0])
> 1
print(t[-1])
> 2
print(t[2:5]) # slice
> (3, 4, 1)
test = 1,2,3,4,5
print(test[2:5])
> (3, 4, 5) # 소괄호 하지 않아도 튜플로 줌
t = (1, 2, 3, 4, 1, 2)
print(t.index(1)) # 1을 찾아라
> 0
print(t.index(1, 1)) # 1을 인덱스 1부터 찾아라
> 4
print(t.count(1)) # 1은 몇개인가 ?
> 2
print(help)を使用して使用可能な関数を確認する
Tuple-3、数値変更
結論からtupleでは数値を変更できません
ただし、図例ではリストを使用できます.t = ([1, 2, 3], [4, 5, 6])
print(t)
> ([1, 2, 3], [4, 5, 6])
t[0] = [1] # 튜플 t의 0번째를 다른 리스트로 바꿔
! error : 튜플 t의 0번째를 다른 리스트로 바꾸지 못함, TypeError: 'tuple' object does not support item assignment
print(t[0][0]) # 튜플 t의 0번째의 0번째 값은 ?
> 1
t[0][0] = 100 # 튜플 t의 0번째의 0번째를 100으로 바꿔
print(t)
> ([100, 2, 3], [4, 5, 6])
tuple-4,解包
num_tuple = (10, 20)
print(num_tuple)
> (10, 20)
x, y = num_tuple # 튜플 꺼내기, unpacking
print(x, y)
> 10 20
x, y = (10, 20)
print(x, y)
> 10 20
x, y = 10, 20 #튜플 사용시 소괄호 사용하지 않아도 됨(왜? 파이썬이 자동으로 튜플로 인식하기떄문). 보통 변수 선언할 때 사용함
print(x, y)
> 10 20
# 보통 이럴때 사용
min, max = 0, 100
print(min, max)
# 안좋은 예
a, b, c, d, e, f = 'Mike', '1', '1', '1', 'e', 'f'
# 이렇게 변수가 많으면 다음과 같이 줄바꿈하여 사용
a = 'mike'
b = '1'
...
f = 'f'
# 언패킹을 이용하여 변수바꾸기
a = 100
b = 200
a, b = b, a
print(a, b) #
> 200 100
# 언패킹 사용 안하면 아래와 같이 고통받음
i = 10
j = 20
tmp = i
i = j
j = tmp
print(i, j)
> 20 10
tuple-5、使用例
調音器はどこに使いますか.question = ('A', 'B', 'C')
answer = []
answer.append('A')
answer.append('C')
print(answer)
> ['A', 'C']
質問がある場合は、3つの答えのうち2つを選択します.
開発者がうっかり質問を回答に追加しないように、
調音を使う?どうしたんですか.
デフォルトではtupleはappendをサポートしていないため、エラーを事前に認識できます.
(AttributeError: 'tuple' object has no attribute 'append')
また、問題をリストにリストすると、問題の選択範囲が増える可能性があります.
Reference
この問題について(データ構造2), 我々は、より多くの情報をここで見つけました
https://velog.io/@sayxyoung/python-syntax-tuple
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
t = (1, 2, 3, 4, 1, 2)
print(t)
> (1, 2, 3, 4, 1, 2)
print(type(t))
> <class 'tuple'>
t = (1, 2, 3, 4, 1, 2)
t[0] = 100
! error : 문자열처럼 수치변경 지원이 안됨, TypeError: 'tuple' object does not support item assignment, but 다른것들은 다 가능
print(t[0])
> 1
print(t[-1])
> 2
print(t[2:5]) # slice
> (3, 4, 1)
test = 1,2,3,4,5
print(test[2:5])
> (3, 4, 5) # 소괄호 하지 않아도 튜플로 줌
t = (1, 2, 3, 4, 1, 2)
print(t.index(1)) # 1을 찾아라
> 0
print(t.index(1, 1)) # 1을 인덱스 1부터 찾아라
> 4
print(t.count(1)) # 1은 몇개인가 ?
> 2
t = ([1, 2, 3], [4, 5, 6])
print(t)
> ([1, 2, 3], [4, 5, 6])
t[0] = [1] # 튜플 t의 0번째를 다른 리스트로 바꿔
! error : 튜플 t의 0번째를 다른 리스트로 바꾸지 못함, TypeError: 'tuple' object does not support item assignment
print(t[0][0]) # 튜플 t의 0번째의 0번째 값은 ?
> 1
t[0][0] = 100 # 튜플 t의 0번째의 0번째를 100으로 바꿔
print(t)
> ([100, 2, 3], [4, 5, 6])
num_tuple = (10, 20)
print(num_tuple)
> (10, 20)
x, y = num_tuple # 튜플 꺼내기, unpacking
print(x, y)
> 10 20
x, y = (10, 20)
print(x, y)
> 10 20
x, y = 10, 20 #튜플 사용시 소괄호 사용하지 않아도 됨(왜? 파이썬이 자동으로 튜플로 인식하기떄문). 보통 변수 선언할 때 사용함
print(x, y)
> 10 20
# 보통 이럴때 사용
min, max = 0, 100
print(min, max)
# 안좋은 예
a, b, c, d, e, f = 'Mike', '1', '1', '1', 'e', 'f'
# 이렇게 변수가 많으면 다음과 같이 줄바꿈하여 사용
a = 'mike'
b = '1'
...
f = 'f'
# 언패킹을 이용하여 변수바꾸기
a = 100
b = 200
a, b = b, a
print(a, b) #
> 200 100
# 언패킹 사용 안하면 아래와 같이 고통받음
i = 10
j = 20
tmp = i
i = j
j = tmp
print(i, j)
> 20 10
question = ('A', 'B', 'C')
answer = []
answer.append('A')
answer.append('C')
print(answer)
> ['A', 'C']
Reference
この問題について(データ構造2), 我々は、より多くの情報をここで見つけました https://velog.io/@sayxyoung/python-syntax-tupleテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol