작성
·
194
답변 1
0
안녕하세요 ㅎㅎ
push_back()과 같은 기능을 하는 함수가 파이썬에도 있는지 찾아보며 강의를 들어야하는지..
다른 언어로 준비할 때 어디까지 이해하고 적용해야하는지에 대한 감이 안잡혀(?) 문의 드립니다.
>>
python 등 다른 언어를 하나이상을 아신다면 이정도의 C++언어는 쉽게 이해하실 것 같습니다.
다만 이해가 안되신다면
그냥 앞에 집어넣는다 또는 뒤에 집어넣는다 의미만 이해하고 넘어가셔도 되긴하지만... 저한테 질문을 주셔서 이해를 하고 C++를 한번 테스팅하고 넘어가는게 좋을 것 같습니다.
즉, 이정도의 C++언어는 이해 + python과 대응해서 공부하시는게 좋을 것 같습니다.
예를 들어 다음의 코드는.
#include <bits/stdc++.h>
using namespace std;
list<int> a;
void print(list <int> a){
for(auto it : a) cout << it << " ";
cout << '\n';
}
int main(){
for(int i = 1; i <= 3; i++)a.push_back(i);
for(int i = 1; i <= 3; i++)a.push_front(i);
auto it = a.begin(); it++;
a.insert(it, 1000);
print(a);
it = a.begin(); it++;
a.erase(it);
print(a);
a.pop_front();
a.pop_back();
print(a);
cout << a.front() << " : " << a.back() << '\n';
a.clear();
return 0;
}
def print_list(a):
for item in a:
print(item, end=" ")
print()
def main():
a = []
# C++의 push_back에 해당하는 파이썬 코드
for i in range(1, 4):
a.append(i)
# C++의 push_front에 해당하는 파이썬 코드
for i in range(1, 4):
a.insert(0, i)
# 특정 위치에 요소 삽입
a.insert(1, 1000)
print_list(a)
# 특정 위치의 요소 제거
del a[1]
print_list(a)
# 맨 앞과 맨 뒤의 요소 제거
a.pop(0)
a.pop()
print_list(a)
# 리스트의 맨 앞과 맨 뒤의 요소 출력
print(a[0], ":", a[-1])
# 리스트 비우기
a.clear()
if __name__ == "__main__":
main()
다음 처럼 python 코드로 나타낼 수 있습니다.
또한 대응을 한다면 다음과 같습니다. 이부분 참고해서 공부하시면 될 것 같습니다.
push_front = insert
erase = del
clear = clear
pop_back = pop()
pop_front = pop(0)
그리고 수강생님 말씀을 좀 생각해봤는데요.
python을 배웠어도 어려워할 수 있을 것 같아서
추후 C++ 이외에 다른 언어로도 포팅 -> 제공해서 쉽게 공부할 수 있도록 교안에 추가하도록 하겠습니다.
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.
이렇게나 빠른 피드백 너무 감사드립니다.
잘 이해했습니다 ㅎㅎ 반영해서 공부해야겠네요.
감사드려요!