[1. 개요]
python 코드 작성 시, 유용한 팁
- 배열 초기화
- 리스트 정렬
- 문자 <-> 정수 변환
- 리스트 순회
- 기타...
[2. 배열 초기화]
mylist1 = [0] * 10
# 길이가 10인 리스트를 0으로 초기화
mylist2 = [i for i in range(5)]
# 길이가 5인 리스트를 0부터 4까지로 초기화
print(mylist1)
# output
# [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
print(mylist2)
# output
# [0, 1, 2, 3, 4]
[3. 리스트 정렬]
mylist = [5, 4, 3, 2, 1]
mylist2 = sorted(mylist)
# 주어진 배열을 정렬하여, 새로운 리스트에 저장
# 원래 배열에는 변화 없음
print(mylist)
# output
# [5, 4, 3, 2, 1]
print(mylist2)
# output
# [1, 2, 3, 4, 5]
mylist.sort()
# 주어진 배열을 정렬.
print(mylist)
# output
# [5, 4, 3, 2, 1]
persons = [['Z', 1], ['A', 1], ['A', 3], ['A', 2]]
persons.sort(key=lambda v : (v[0], -v[1]))
print(persons)
# output
# 문자는 오름차순으로
# 숫자는 내림차순으로 정렬한다.
# c++ sort 에서 std::tie() 로 비교하는 것과 비슷하다.
# [['A', 3], ['A', 2], ['A', 1], ['Z', 1]]
[4. 문자 <-> 정수 변환]
start = ord('A')
# ord: 문자를 정수로
end = ord('Z')
for i in range(start, end+1):
print(i, chr(i))
# chr: 정수를 문자로
# output
# 대문자 알파벳에 해당하는 아스키 코드 값
# 대문자 알파벳
[5. 리스트 순회]
mylist = [i for i in range(9)]
# 배열 내 값 순회
for v in mylist:
print(v, end=" ")
print("\n=====")
# 배열의 index 와 value 를 같이 순회
for i, v in enumerate(mylist):
print(i, v, mylist[i], "|", end=" ")
print("\n=====")
# 배열을 역을 순회
for v in mylist[::-1]:
print(v, end=" ")
print("\n=====")
# 배열을 처음부터 2칸 씩 순회
for v in mylist[::2]:
print(v, end=" ")
print("\n=====")
# 1부터, 길이 마지막까지 2칸 씩 순회
for i in range(1, len(mylist), 2):
print(mylist[i], end=" ")
print("\n=====")
# 배열을 역으로 순회하되, index 도 같이 순회
for i, v in enumerate(mylist[::-1]):
print(i, v, "|", end=" ")
'Python' 카테고리의 다른 글
[python] bearing (0) | 2024.03.27 |
---|---|
[python] haversine distance (0) | 2024.03.27 |
python. io 성능 (0) | 2023.10.04 |
python. shallow/deep copy (0) | 2023.10.04 |
Package datetime (0) | 2021.11.16 |