12:36 여기서 왜 인터랙티브 셸에서 빠져나가고 코드를 실행하는지 잘 모르겠습니다ㅠㅠ 비주얼 스튜디오에서 직접 해봤는데 인터랙티브 셸에서 예를 들어 ex01.py를 쳤을 때 traceback, python ex01.py를 쳤을 때는 syntax로 에러가 뜨고, exit으로 빠져나간 뒤 python ex01.py를 치니 실행되네요..! 이렇게 나오는 이유가 궁금합니다.. 아직 이해가 부족한 것 같네요ㅠㅠ
선생님 안녕하세요? 강의 굉장히 잘 듣고 있습니다! 좋은강의 만들어주셔서 감사합니다. 사소한 질문이 하나 생겨서 댓글을 남기게 되었습니다. exit() #해서 python 나오고 python 파일.py #해서 파일을 실행하는데 선생님은 conda activate beakerx #를 입력하시더라고요. 혹시 마지막줄이 의미하는게 무엇인지 궁금합니다! 감사합니다.
"가상 환경 설정"이라고 표현하는 부분입니다! 이후에 배우는 모듈을 알아야 자세하게 설명 가능한데, 일단 모듈을 모른다고 생각하고 간단하게 설명하면 - 집에서 한 번에 - 유화, 수채화, 연필화, 색연필화 등의 그림을 그리고 싶다고 - 책상 하나 위에 모든 도구를 올려두고 그리면 헷갈릴 수 있습니다. [여러 프로그램을 위한 모듈을 한 곳에 다 설치하면, 충돌이 발생할 수 있습니다] - 그래서 아예 책상을 여러 개 구매해서 - 각각의 그림을 위한 도구들을 각각의 책상에 배치해서 사용하는 것 [가상 환경이라는 것을 여러 개 만들고, 모듈을 각각에 따로 설치해서 사용합니다] 이라고 생각하시면 됩니다! . 저는 다른 개발과 강의를 진행하다보니 + 강의를 위한 환경을 따로 만들어서 쓰고 있다보니, 입력하고 있습니다!
여러 개를 출력하고 싶으시면, 쉼표를 넣어서 출력해주시면 됩니다. 그럼 print() 함수의 목적어 부분에 넣은 아이들이 주르륵 띄어쓰기로 구분되서 출력됩니다. 줄바꿈 해서 출력하고 싶다 = print()를 하나 더 쓴다. 띄어쓰기 넣고 출력하고 싶다 = print() 내부에 쉼표 치고 여러 개 출력한다.
질문이 생겼어요...! 인터렉티브 셀(?) 터미널(?) 창과 코드 입력하는 파일 창(?)의 차이와 의미가 무엇인지 잘 이해가 안됩니다. 터미널에서 코드를 실행하는(?) 것으로 생각하고 있었는데 지난번과 이번 강의에서 나오는 type 함수의 경우는 코드 창에서 입력하면 실행이 안되더라구요. 확실하게 설명해주실 수 있으신가요? (언제나 무척 유익한 강의영상 잘 듣고 있습니다!!)
터미널은 파이썬과 관계 없는 "프로그램을 실행하는 프로그램"입니다. 그래서 여기서는 파이썬 명령어를 잊력하셔도 안 됩니다. 인터렉티브 쉘은 터미널에서 실행하는 기본적인 파이썬 코드 실행 프로그램입니다. 여기에서 파이썬 코드 입력이 가능합니다. 여기는 코드를 실행하면 내용을 자동으로 print 함수로 감싸서 출력해줍니다. 파일 창은 그냥 파일의 내용 입력하는 창입니다. 파이썬 코드를 출력하려면 반드시 print() 함수를 사용해주셔야 합니다.
교재의 70쪽 아래에 있는 "오류" 박스에는Traceback (most recent call last):............... 이라는 설명이 있는데,의 영어 의미가 무엇인지요? 계속해서 이런 용어가 나오는데, 이 기회를 통해 정확하게 알아두면 좋을 것 같아서 문의합니다.고맙습니다.
Choe Choe idle로 만든 파일을 어떤 형태로 실행하고 계신지 전혀 모르겠는데, 일단 어차피 idle는 사용하는 프로그램이 아닙니다(기능들이 부족해서 실무에서도 쓰이지 않고, 교육에서도 쓰면 조금 이상하게 보이는 프로그램). 그냥 비주얼스튜디오 코드에서 진행하시는 것을 추천드립니다.
안녕하세요. 질문하나 드려요 ㅠㅠ int함수의 기능을 이리저리 살펴보다가 진수변환도 가능하다는 것을 알게되었습니다. 그런데 이런 경우에는 왜 에러가 뜨는 줄 알 수 있을까요? num = 10 일때 print(int(num,2))은 2으로 출력이 되지 않는데 반해 print(int('10',2))는 2로 출력이 되었습니다. 그래서 num=10으로 문자형이 아니라서 그런가 하니 print(int(num))은 그냥 num을 썼는데도 문제없이 10으로 출력이 되었습니다. 그렇다면, print(int(num,2))가 에러가 뜨는 이유는 무엇인가요? 그리고 어떻게 num을 문자형으로 인식하도록 할 수 있을까요? 늦은시간 두서없는질문 죄송합니다.
VSCode는 파이썬 코드 실행과 어떠한 관계도 없습니다. 현재 코드를 실행하실 때 python2.X 버전이 실행되어서 그렇습니다. 1. 설치할 때 실수로 2.X 버전을 깔았거나 2. 다른 프로그램(아나콘다 등)을 설치할 때 python 2.X 버전이 깔렸거나 3. macOS를 사용하고 있을 경우 python 명령어 대신 python3를 사용하셔야 합니다![python3 hello.py처럼 실행해주세요]
컴퓨터 내부에서는 정수이냐 or 부동소수점이냐가 엄청난 차이이기 때문에 표현해주는 것입니다. 원래 대부분의 프로그래밍 언어는 둘을 구분해서 생성하고 사용하게 되는데, 파이썬은 좀 편리하게 해주고자 간단한 계산(나눗셈)에서 자동으로 변환이 일어납니다. 이게 장점(쉽게 사용)이자 단점(실수할 수 있음)이라고 두 자료형의 가장 큰 차이는 계산 정확도라고 할 수 있는데요. 정수는 계산이 정확하게 나오지만, 부동소수점은 정확하게 나오지 않습니다. 따라서 이후 뭔가를 만들 때 사용에 주의해야 한다고 기억해주시면 좋을 것 같습니다...!
print(나는 너에게 반갑다) # 이건설명 #이건 주석 이렇게 작성하면 2번째 문장이 출력이 안되는데 왜 그런거죠? File "p.py", line 1 print(나는 너에게 반갑다) # 이건설명 ^ SyntaxError: invalid syntax 이렇게 나와요 파일명은 p.py입니다.
여러 원인이 있을 수 있습니다. 일단 2.X는 곧 완전히 지원이 종료되므로[보안 업데이트 조차 지원 종료], 사용하지 않으시는걸 추천드립니다. 파이썬이 2.x라서 또는 현재 출력하시는 터미널이 한글을 인식하지 못해서라는 두 가지 가능성이 있습니다. 파이썬을 진행해보신 적이 없으시면, 책과 같은 환경에서 진행하실 것을 추천드립니다.
파이썬의 / 연산자는 플롯으로 결과를 냅니다. 그래서 정수로 만들어줘야 할 때는 //를 사용합니다. 일반적인 사용에서는 큰 차이가 없어서 그냥 쓰시다가, 이후에 배우는 리스트 연산 등에서 오류가 뜰 때 "맞다맞다"하고 "//로 고쳐야지"하는 정도로만 기억하셔도 괜찮습니다[이 내용은 이후 리스트 연산 때 추가 설명합니다...!]
1) 연습문제 4에서 print("- 몫:" 과 3462//17 사이에 반점(,)을 붙여줘야하는 이유가 무엇인가요? 빼니까 오류가 나더라구요 2) 연습문제 4에서 위의 결과를 터미널에 나타낼 때 "몫: 203"으로 띄워쓰기 하지말고 "몫:203"으로 붙여쓰기할 수 있는 방법은 있을까요?
1. 매개변수이므로 쉼표로 구분해야한다는 것이 문법입니다. 2. 붙이고 싶으시면 "- 몫:" + str(3462//17) 형태로 그냥 문자열을 조합해서 출력하시면 됩니다[print 함수는 기본적으로 매개변수로 들어온 애들을 띄어쓰기로 구분해서 출력하므로 이후에 배우는 함수의 키워드 매개변수 사용 전에는 이렇게 밖에 만들 수 없습니다].
@@김성훈-y9j 인터랙티브 쉘에서 출력되는 것은 인터랙티브 쉘이 내부적으로 print() 함수로 결과를 출력해주기 때문입니다...! 인터랙티브 쉘에서 한 줄 한 줄 결과를 보는 경우(한 줄의 코드를 입력했을 경우에만 print() 함수로 결과를 출력해줍니다)에는 print() 함수를 사용할 필요는 없지만, 일반적인 코드(파일로 만들어서 사용하는 경우)에는 그냥 type(37)이라고만 쓰면 결과만 구해놓고 출력도 안 하고 아무 것도 안 하는 코드가 됩니다.
안녕하세요. 여기에 이런 질문을 올려도 되는지 모르깄네요 ㅠ 요즘 파이썬 공부하고 있는 30대 입니다. 주 목적은 알고리즘트레이딩프로그램을 개발하기 위해 파이썬을 배우고 있습니다. 파이썬 및 트레이딩 목적으로 노트북을 하나 장만하려고 하는데 내장그래픽카드만으로도 충분할까요? 아니면 지포스 그래픽카드가 따로 있는 것을 구매하는 게 낫나요???
joonhyuk son 알고리즘 트레이딩을 어느 정도로 하실지 몰라서 명확하게 답변을 드릴 수는 없지만 일반적으로 인공지능을 쓰신다면 처리 시간은 - 연산의 복잡도 - 데이터양 에 비례하게 됩니다. 기본적인 알고리즘 트레이딩 구현을 간단하게 테스트 하시는 단계에서는 아무리 복잡해봤자 데이터를 그렇게까지 많이 때려넣지 않으니 성능 높은 컴퓨터가 필요하지 않습니다. 모델을 만드시고 + 대충 이게 좀 되겠다 싶을 때 + 데이터를 확 넣어 학습시킬 때 시간이 너무 오래 걸린다 싶을 때 = 그때 좋은 성능의 컴퓨터를 장만하셔도 큰 문제 없을 것 같습니다.
아래와 같이 특정 계산에서 계산이 이상하게 되는데 왜 그런지 알고 싶습니다. >>> 2.0-1.1 0.8999999999999999 >>> 2.01-1.1 0.9099999999999997 >>> 1.01-1.1 -0.09000000000000008 >>> 2-1.11 0.8899999999999999 >>> 2-1.1153 0.8847 >>> 2-1.11 0.8899999999999999
컴퓨터가 내부적으로 소수점을 표현하는 방법은 불완전해서, 실질적으로 소수 연산을 제대로 하지 못합니다. 그래서 지금과 같은 결과가 나오는 것입니다. 이와 관련된 자세한 내용은 엄청나게 길어서, 구글에서 "float 오차"로 검색해보시면 자세한 글들이 나올 것입니다. 그래서 금융 계산이라던지 확실해야 하는 연산에서는 소수점 연산을 사용하지 않습니다(소수점이 발생할 가능성이 있을 경우, 100, 1000 등을 곱해 소수점을 띄고 정수로 연산한 뒤 다시 낮춰줍니다).
4: 0100 7: 0111 에서 ^는 XOR 연산자로 "둘이 겹치지 않는 부분"을 추출하는 아이입니다. 따라서 안 겹치는 0011이 추출되어서 3이 나옵니다. 파이썬은 알고리즘 대회 같은 곳에 나가는 것이 아닌 이상 비트 연산자를 사용하는 프로그래밍 언어는 아니므로 딱히 기억하지 않으셔도 괜찮습니다.
동영상 강좌에서... 제가 생각하기에는, print(2+2-((2*2)/(2*2))이 아니라, print(2+2-(((2*2)/2)*2)이 아닐까 생각 됩니다. 오타이신 것 같네요... print(2+2-((2*2)/(2*2)) = 3.0 print(2+2-(((2*2)/2)*2) = 0.0 으로 결과가 나옵니다.
갈수록 상콤해지시는 인성님 :)
ㅋㅎㅋㅎ
선생님, 파이썬을 이제 시작했는데 정말 반복적이고 친절한 설명 감사드립니다. 홍익인간이세요 정말...선생님 강의로 열심히 공부해 보겠어요!!
감사합니다!
오늘도 강의 잘봤습니다 ㅎㅎ
강의 감사합니다.
좋은 하루 되세요^^
감사합니다
짧고 친절해서 초보가 보기에 젤 좋은거같아요
12:36 여기서 왜 인터랙티브 셸에서 빠져나가고 코드를 실행하는지 잘 모르겠습니다ㅠㅠ
비주얼 스튜디오에서 직접 해봤는데 인터랙티브 셸에서 예를 들어 ex01.py를 쳤을 때 traceback, python ex01.py를 쳤을 때는 syntax로 에러가 뜨고, exit으로 빠져나간 뒤 python ex01.py를 치니 실행되네요..! 이렇게 나오는 이유가 궁금합니다.. 아직 이해가 부족한 것 같네요ㅠㅠ
스타벅스를 찾아가는 일은 스타벅스 밖에서만 가능하고, 커피를 주문하는 일은 스타벅스 안에서만 가능하듯
python 명령어는 python 명령어 외부에서만 가능하고, python 코드는 그 명령어 내부에서만 칠 수 있습니다. 그냥 사용 가능한 위치가 다른 것입니다.
피아노에 일렉기타까지 있는거 보면 못하시는게 없으시군요 ㄷㄷ
항상 잘듣고있습니다 감사합니다ㅏ!!!
선생님 안녕하세요? 강의 굉장히 잘 듣고 있습니다! 좋은강의 만들어주셔서 감사합니다.
사소한 질문이 하나 생겨서 댓글을 남기게 되었습니다.
exit()
#해서 python 나오고
python 파일.py
#해서 파일을 실행하는데 선생님은
conda activate beakerx
#를 입력하시더라고요. 혹시 마지막줄이 의미하는게 무엇인지 궁금합니다!
감사합니다.
"가상 환경 설정"이라고 표현하는 부분입니다!
이후에 배우는 모듈을 알아야 자세하게 설명 가능한데,
일단 모듈을 모른다고 생각하고 간단하게 설명하면
- 집에서 한 번에
- 유화, 수채화, 연필화, 색연필화 등의 그림을 그리고 싶다고
- 책상 하나 위에 모든 도구를 올려두고 그리면 헷갈릴 수 있습니다.
[여러 프로그램을 위한 모듈을 한 곳에 다 설치하면, 충돌이 발생할 수 있습니다]
- 그래서 아예 책상을 여러 개 구매해서
- 각각의 그림을 위한 도구들을 각각의 책상에 배치해서 사용하는 것
[가상 환경이라는 것을 여러 개 만들고, 모듈을 각각에 따로 설치해서 사용합니다]
이라고 생각하시면 됩니다!
.
저는 다른 개발과 강의를 진행하다보니
+ 강의를 위한 환경을 따로 만들어서 쓰고 있다보니, 입력하고 있습니다!
좋은 강의 감사합니다. 강의 중 연산자 x,/,+,- 순서 적용되는게 아니라 */는 앞에 나오는거 먼저 먹히고, 그 후에 +- 중 먼저나오는게 먼저 먹히는 걸까요?
넵 맞습니다!
터미널에서 다른 연산자는 잘 동작되는데 몫구하기인 3462//17 을하면 에러를 뿌리는 이유가 뭔가요?
어떤 오류가 나오시는지 조금 더 자세하게 설명해주실 수 있을까요!
@@윤인성PS C:\Users\kcj\Desktop\혼자공부하는파이썬> python ex01.py
File "C:\Users\kcj\Desktop\혼자공부하는파이썬\ex01.py", line 1
print(""3462를 17로 나누었을 때의")
^
SyntaxError: invalid syntax
이런 오류가 발생하네요. 왜 그럴까요?
@@김찬주-n7m 따옴표를 2번 입력하셔서 그렇습니다. ""
5 // 2 했는데 '/' 연산자의 오른쪽에 값 식을 입력해야 합니다.
위치 줄:1 문자:4
+ 5 /
현재 파워쉘에서 코드를 입력하고 계신 것 같습니다. 파워쉘에서 python 명령어를 쳐서 파이썬 인터랙티브 셸로 들어간 후에 코드를 입력해주세요.
.py 파일을 영상에서는 저장 없이 바로 불러오시는거 같은데 단축키를 사용해서 저장 하신걸까요?
ex01.py 라는 이름으로 단축키를 이용해 저장하는 방법이 있다면 알려주시면 감사하겠습니다 ..!
저장은 ctrl + s입니다. 강의에서는 끊김 없이 보여드리려고 편집이 들어갑니다! 그래서 이름 지정하는 부분은 편집된 것입니다!
print(15, "+", 4, "=", 15+4)라는거에서 언제 ,(콤마)를 입력을 해야하는지 잘 모르겠습니다
여러 개를 출력하고 싶으시면, 쉼표를 넣어서 출력해주시면 됩니다. 그럼 print() 함수의 목적어 부분에 넣은 아이들이 주르륵 띄어쓰기로 구분되서 출력됩니다.
줄바꿈 해서 출력하고 싶다 = print()를 하나 더 쓴다.
띄어쓰기 넣고 출력하고 싶다 = print() 내부에 쉼표 치고 여러 개 출력한다.
15 + 4 = 19 라는 문장을 출력하실 때, print (15, "+", 4, "=", 15+4)를 사용하셨는데, print("15 + 4 =", 15+4)로 하지 않고, 숫자와 연산자를 나눠서 연산자에만 " "를 하신 이유가 따로 있나요?
딱히 없습니다...!
좋은 강의 감사합니다.
강의 정말 유익하고 내용이 쏙쏙 잘 들어와용! 근데 저렇게 가로로 나누는건 어떻게하는건가영
Visual Studio Code의 터미널 위의 탭을 마우스 오른쪽 클릭하시면 관련된 메뉴가 나옵니다!
설지나고 오랜만에 듣네요. 꾸준해야하는데 ㅠㅠ
작심 3일도 100번 하면 300일이라는 것처럼 중간에 끊겨도 계속 반복하시면 문제 없으실 것 같아요...!!
질문이 생겼어요...! 인터렉티브 셀(?) 터미널(?) 창과 코드 입력하는 파일 창(?)의 차이와 의미가 무엇인지 잘 이해가 안됩니다. 터미널에서 코드를 실행하는(?) 것으로 생각하고 있었는데 지난번과 이번 강의에서 나오는 type 함수의 경우는 코드 창에서 입력하면 실행이 안되더라구요. 확실하게 설명해주실 수 있으신가요? (언제나 무척 유익한 강의영상 잘 듣고 있습니다!!)
터미널은 파이썬과 관계 없는 "프로그램을 실행하는 프로그램"입니다. 그래서 여기서는 파이썬 명령어를 잊력하셔도 안 됩니다.
인터렉티브 쉘은 터미널에서 실행하는 기본적인 파이썬 코드 실행 프로그램입니다. 여기에서 파이썬 코드 입력이 가능합니다. 여기는 코드를 실행하면 내용을 자동으로 print 함수로 감싸서 출력해줍니다.
파일 창은 그냥 파일의 내용 입력하는 창입니다. 파이썬 코드를 출력하려면 반드시 print() 함수를 사용해주셔야 합니다.
아... 인터렉티브 쉘을 잘못 이해하고 있었네요. 구분해서 실행해보니 오류가 해결됐어요. 감사합니다! 🙃
3 % 2는 1.5로 나누어 떨어지니 0이 나와야 하는 것 아닌가요? 왜 1이 나오는건지 궁금합니다. 나머지 1이 나오는 상황에서 계산이 멈추는 건가요?
나머지 연산의 경우, 소수점 이하는 취급하지 않습니다!
참고로 이 강의는 현재 개정판 강의가 있으므로 그쪽을 참고해주세요!!
15:00 int끼리 연산을 했는데 결과는 float으로 나오는 이유가 뭔가요?
파이썬은 그렇습니다...! 다른 언어와 다릅니다!
교재의 70쪽 아래에 있는 "오류" 박스에는Traceback (most recent call last):............... 이라는 설명이 있는데,의 영어 의미가 무엇인지요? 계속해서 이런 용어가 나오는데, 이 기회를 통해 정확하게 알아두면 좋을 것 같아서 문의합니다.고맙습니다.
TraceBack은 "역으로 추적한다"라는 의미입니다. 오류가 발생했을 경우, 그 오류가 어디로 왔는지 역으로 추적해서 오류가 발생한 곳을 보여주기 때문에 이러한 명칭으로 부르는 것입니다...!
D2coding을 다시 설치하면 원하는 글꼴로 유지되다가, 다음날이 되면 visual studio code 글꼴이 바뀌어 있습니다. 설정 상태로 유지되게 하려면 어떻게 해야 할지요. 강의 진도를 따라 가는데 무리는 없는데... 글꼴 유지가 안되어 난감합니다 ㅠㅠ
지금 사용하시는 환경(컴퓨터)에 약간의 문제가 있는 것 같습니다(백신 프로그램 등이 충돌을 일으킬 수도 있고 등등). 폰트는 그냥 외관일 뿐이라 진행하는데는 문제 없습니다.
15:00 혹시 여기서는 (((2*2)/2)*2) 순서로 계산된건가요??
넵 우선순위가 같으면 그냥 왼쪽에서 오른쪽으로 계산합니다.
영상에 Float을 입력할때 뒤의 글을 미리 볼 수 있게 뜨던데 설정을 어떻게 하나요?
질문 취소입니다... 그냥 뜨네요...^^
이해가 잘되네요! 감사합니다~~
Python 3.8.2 (tags/v3.8.2:7b3ab59, Feb 25 2020, 22:45:29) [MSC v.1916 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>> print(3+5)
8
>>> print("3+5")
3+5
>>> print("3+5=")
3+5=
>>> print("3+5=",3+5)
3+5= 8
>>> print("3/2=",3/2)
3/2= 1.5
>>> print("3//2=",3//2)
3//2= 1
>>> print("5%2=",5%2)
5%2= 1
>>> print("2**1=",2**1)
2**1= 2
>>> print("2**4=",2**4)
2**4= 16
>>> print(15,"+",4,"=",15+4)
15 + 4 = 19
>>> print("15+4=",15+4)
15+4= 19
>>> print("3462를 17로 나누었을 때의")
3462를 17로 나누었을 때의
>>> print("-몫:",3462//17)
-몫: 203
>>> print("-나머지:",3462%17)
-나머지: 11
C:\Users\USER\Desktop\파이썬>calculate.py
File "C:\Users\USER\Desktop\파이썬\calculate.py", line 1
Python 3.8.2 (tags/v3.8.2:7b3ab59, Feb 25 2020, 22:45:29) [MSC v.1916 32 bit
(Intel)] on win32
^
SyntaxError: invalid syntax
C:\Users\USER\Desktop\파이썬>
명령창에서 invalid syntax 라고 나오는데 이유가 뭘까요...?ㅜㅜ
실행은 강의처럼 "python 파일이름"으로 해주세요.
윤인성 그렇게도 해봤는데 그럼 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 라고 나와요... 강의 잘 따라가고 있는데 idle로 만든 파일들이 다 실행이 안되네요...
윤인성 비주얼 스튜디오로 하면 명령창에서 실행이 제대로 되는데 idle로 작성한 파일들은 다 invalid syntax라고 나와요
Choe Choe idle로 만든 파일을 어떤 형태로 실행하고 계신지 전혀 모르겠는데, 일단 어차피 idle는 사용하는 프로그램이 아닙니다(기능들이 부족해서 실무에서도 쓰이지 않고, 교육에서도 쓰면 조금 이상하게 보이는 프로그램). 그냥 비주얼스튜디오 코드에서 진행하시는 것을 추천드립니다.
강의 잘 보고 있습니다,
>>> 2+2-2*2
0
>>> 2+2-2*2/1
0.0
위와 같은 경우에서 첫 번째 수식은 int 가 되고 두 번째 수식은 float 가 되는 이유가 있을까요?
나누기를 쓰면 float이 나옵니다!
@@윤인성 아하 그렇군요! 감사합니다 :)
9강 출석 했습니다! 감사합니다!
안녕하세요. 질문하나 드려요 ㅠㅠ int함수의 기능을 이리저리 살펴보다가 진수변환도 가능하다는 것을 알게되었습니다. 그런데 이런 경우에는 왜 에러가 뜨는 줄 알 수 있을까요?
num = 10 일때
print(int(num,2))은 2으로 출력이 되지 않는데 반해
print(int('10',2))는 2로 출력이 되었습니다. 그래서 num=10으로 문자형이 아니라서 그런가 하니
print(int(num))은 그냥 num을 썼는데도 문제없이 10으로 출력이 되었습니다.
그렇다면, print(int(num,2))가 에러가 뜨는 이유는 무엇인가요? 그리고 어떻게 num을 문자형으로 인식하도록 할 수 있을까요?
늦은시간 두서없는질문 죄송합니다.
오류가 뜨는 이유는 그냥 그렇게 설계되었기 때문입니다! 문자열 자료형으로 인식하게 하고 싶으시면 str 함수를 사용해 문자열로 변경해주시면 됩니다!
@@윤인성 앗 그렇군요. 이해되었습니다. 감사합니다!!
출첵.. 마지막에 괄호 넣으시면 답은 바뀌게 되네요ㅎ
선생님, 왜 제 비쥬얼 스튜디오에서는 10/20 0 1.5가 아니라 0로 입력이 될까요??
VSCode는 파이썬 코드 실행과 어떠한 관계도 없습니다.
현재 코드를 실행하실 때 python2.X 버전이 실행되어서 그렇습니다.
1. 설치할 때 실수로 2.X 버전을 깔았거나
2. 다른 프로그램(아나콘다 등)을 설치할 때 python 2.X 버전이 깔렸거나
3. macOS를 사용하고 있을 경우
python 명령어 대신 python3를 사용하셔야 합니다![python3 hello.py처럼 실행해주세요]
@@윤인성 선생님의 강의,도서 들로 ,, 공부하는데 많은 도움을 받고 있습니다. 감사합니다!
늦은 시간에 죄송합니다. 혼공파 책 71페이지에 문자열 연산의 우선순위가 적용이 안되는데 어떻게 해야 문자열도 수처럼 곱하기 먼저 계산 되게 할수 있나요?
괄호를 치시면 됩니다.
확인문제 5번에서 답이 0이 아닌 0.0처럼 float형으로 나오는 이유가 있나용..?
컴퓨터 내부에서는 정수이냐 or 부동소수점이냐가 엄청난 차이이기 때문에 표현해주는 것입니다.
원래 대부분의 프로그래밍 언어는 둘을 구분해서 생성하고 사용하게 되는데, 파이썬은 좀 편리하게 해주고자 간단한 계산(나눗셈)에서 자동으로 변환이 일어납니다.
이게 장점(쉽게 사용)이자 단점(실수할 수 있음)이라고
두 자료형의 가장 큰 차이는 계산 정확도라고 할 수 있는데요. 정수는 계산이 정확하게 나오지만, 부동소수점은 정확하게 나오지 않습니다. 따라서 이후 뭔가를 만들 때 사용에 주의해야 한다고 기억해주시면 좋을 것 같습니다...!
print(나는 너에게 반갑다) # 이건설명
#이건 주석
이렇게 작성하면 2번째 문장이 출력이 안되는데 왜 그런거죠?
File "p.py", line 1
print(나는 너에게 반갑다) # 이건설명
^
SyntaxError: invalid syntax
이렇게 나와요
파일명은 p.py입니다.
문자열은 "로 감싸주셔야 합니다.
print("안녕하세요"[0]) 이렇게 하면 출력이 ?로 나오는데 왜그러는건가요?ㅠ 그리고 저는 0이 첫번째숫자고 2가 두번째숫자고 2씩 건너뛰는데 왜그러는 걸까요? 버전이 2.7.11이긴 합니다 그래서 그런가요?
여러 원인이 있을 수 있습니다. 일단 2.X는 곧 완전히 지원이 종료되므로[보안 업데이트 조차 지원 종료], 사용하지 않으시는걸 추천드립니다. 파이썬이 2.x라서 또는 현재 출력하시는 터미널이 한글을 인식하지 못해서라는 두 가지 가능성이 있습니다. 파이썬을 진행해보신 적이 없으시면, 책과 같은 환경에서 진행하실 것을 추천드립니다.
그냥 (비주얼 스튜디오에서) 터미널 열었을때 clear라고 치면 화면이 깔끔 해지던데..
비주얼 스튜디오에서 python치고 인터렉티브 셸 들어가면 어떻게 해야 터미널이 깨끗해지나요?
인터렉티브쉘에는 깨끗하게 하는 명령어가 존재하지 않습니다.
print를 이용해서 연산자를 이용해서 수계산을하는데 int만 이용해서 연산을 하였는데 float결과가 나오는 이유는 무엇인가요?
ex) 2+2 =4 , 2*2/2 =2.0 , 2+2-2*2/2 = 2.0
파이썬의 / 연산자는 플롯으로 결과를 냅니다. 그래서 정수로 만들어줘야 할 때는 //를 사용합니다. 일반적인 사용에서는 큰 차이가 없어서 그냥 쓰시다가, 이후에 배우는 리스트 연산 등에서 오류가 뜰 때 "맞다맞다"하고 "//로 고쳐야지"하는 정도로만 기억하셔도 괜찮습니다[이 내용은 이후 리스트 연산 때 추가 설명합니다...!]
답변 감사합니다~!
1) 연습문제 4에서 print("- 몫:" 과 3462//17 사이에 반점(,)을 붙여줘야하는 이유가 무엇인가요? 빼니까 오류가 나더라구요
2) 연습문제 4에서 위의 결과를 터미널에 나타낼 때 "몫: 203"으로 띄워쓰기 하지말고 "몫:203"으로 붙여쓰기할 수 있는 방법은 있을까요?
1. 매개변수이므로 쉼표로 구분해야한다는 것이 문법입니다.
2. 붙이고 싶으시면 "- 몫:" + str(3462//17) 형태로 그냥 문자열을 조합해서 출력하시면 됩니다[print 함수는 기본적으로 매개변수로 들어온 애들을 띄어쓰기로 구분해서 출력하므로 이후에 배우는 함수의 키워드 매개변수 사용 전에는 이렇게 밖에 만들 수 없습니다].
@@윤인성 좋은 답변 감사드립니다. 이해가 쏙쏙 되네요!
2021년 3월 7일 수강완료
학교에서 따로 배우던 중 궁금한 점입니다ㅠㅠ range(1,10) 에서의 범위는 1~9까지 인가요? for문을 통해서 i,j 범위 (1,10)으로 해서 i*j 하면 81까지 나오는게 맞는 건가용..?
넵
powershell 이라고 나오는 부분에 zsh라고 되어있는데 이건 어떻게 하신건가요ㅠ
저는 zsh라는 별도의 쉘을 사용하기 때문입니다 'ㅁ' ...!
print(type(37)) 하고 type(37) 를 실행했을떄 결과적으로는 같은데 print를 넣고 안넣고의 차이가 있을까요??
코드가 다르면 당연히 결과가 다릅니다. print()는 터미널 화면에 출력하는 함수이므로, 터미널 화면에 출력하려면 print()를 사용해야 합니다.
윤인성 하지만 지금 터미널 화면에서 저거 두개를 실행하여 비교해보면 결과적으로 둘다 라고 뜨는데요....?
@@김성훈-y9j 인터랙티브 쉘에서 출력되는 것은 인터랙티브 쉘이 내부적으로 print() 함수로 결과를 출력해주기 때문입니다...! 인터랙티브 쉘에서 한 줄 한 줄 결과를 보는 경우(한 줄의 코드를 입력했을 경우에만 print() 함수로 결과를 출력해줍니다)에는 print() 함수를 사용할 필요는 없지만, 일반적인 코드(파일로 만들어서 사용하는 경우)에는 그냥 type(37)이라고만 쓰면 결과만 구해놓고 출력도 안 하고 아무 것도 안 하는 코드가 됩니다.
취업을했는데 백엔드로 파이썬 장고 쓴다길래 급하게 파공 시작
터미널 상하 말고 좌우로 배치되게 어떻게 바꾸신건가요?
터미널 위의 탭쪽에 마우스 오른쪽 클릭해보시면 관련 메뉴가 나타납니다...!
안녕하세요. 여기에 이런 질문을 올려도 되는지 모르깄네요 ㅠ 요즘 파이썬 공부하고 있는 30대 입니다. 주 목적은 알고리즘트레이딩프로그램을 개발하기 위해 파이썬을 배우고 있습니다. 파이썬 및 트레이딩 목적으로 노트북을 하나 장만하려고 하는데 내장그래픽카드만으로도 충분할까요? 아니면 지포스 그래픽카드가 따로 있는 것을 구매하는 게 낫나요???
joonhyuk son 알고리즘 트레이딩을 어느 정도로 하실지 몰라서 명확하게 답변을 드릴 수는 없지만
일반적으로 인공지능을 쓰신다면 처리 시간은
- 연산의 복잡도
- 데이터양
에 비례하게 됩니다.
기본적인 알고리즘 트레이딩 구현을 간단하게 테스트 하시는 단계에서는 아무리 복잡해봤자 데이터를 그렇게까지 많이 때려넣지 않으니 성능 높은 컴퓨터가 필요하지 않습니다.
모델을 만드시고 + 대충 이게 좀 되겠다 싶을 때 + 데이터를 확 넣어 학습시킬 때 시간이 너무 오래 걸린다 싶을 때 = 그때 좋은 성능의 컴퓨터를 장만하셔도 큰 문제 없을 것 같습니다.
공부 단계에서는 다른 사람들과 만나서 스터디도 하게 되시고 할테니 노트북을 더 추천합니다...!
@@윤인성 감사합니다.^^ㅎ
파이썬 인터렉티브 셸은 어떻게 나가나요?
강의 내용대로 exit()을 치면 나가집니다.
책 71페이지 오탈자 났네요.
print("안녕" + "하세요" * 3)
책에선 "안녕하세요안녕하세요안녕하세요" 를 출력 한다고 써있는데,
실제 출력값은 "안녕하세요하세요하세요" 입니다.
^ ^ 강의 잘 보고 있습니다. ^ ^
오탈자가 아닙니다. 전후 내용 관계를 함께 파악하며 내용을 다시 읽어보시기 바랍니다.
@@윤인성 저도 print("안녕" + "하세요" *3) 을 입력해보면 "안녕하세요안녕하세요안녕하세요" 가 아닌 "안녕하세요하세요하세요" 가 출력됩니다. 첫번째 문자열에대한 해설과 두번째 문자열에 대한 해설이 바뀐거 아닌가 생각됩니다.
@@NoobPro_J 책의 내용을 다시 확인해주세요 @_@ ...!
만약 다음으로 해석한다면, 이렇게
다음으로 해석한다면 이렇게 출력될 것이다
실제로 해보면 이렇게 출력된다
라는 내용입니다.
@@윤인성 예측하는 과정을 순서대로 쓰신거였군요. 이제 이해했습니다. 감사합니다. 이 사람 왜이러나 하셨을듯 합니다. ㅎㅎ
아래와 같이 특정 계산에서 계산이 이상하게 되는데 왜 그런지 알고 싶습니다.
>>> 2.0-1.1
0.8999999999999999
>>> 2.01-1.1
0.9099999999999997
>>> 1.01-1.1
-0.09000000000000008
>>> 2-1.11
0.8899999999999999
>>> 2-1.1153
0.8847
>>> 2-1.11
0.8899999999999999
컴퓨터가 내부적으로 소수점을 표현하는 방법은 불완전해서, 실질적으로 소수 연산을 제대로 하지 못합니다. 그래서 지금과 같은 결과가 나오는 것입니다. 이와 관련된 자세한 내용은 엄청나게 길어서, 구글에서 "float 오차"로 검색해보시면 자세한 글들이 나올 것입니다. 그래서 금융 계산이라던지 확실해야 하는 연산에서는 소수점 연산을 사용하지 않습니다(소수점이 발생할 가능성이 있을 경우, 100, 1000 등을 곱해 소수점을 띄고 정수로 연산한 뒤 다시 낮춰줍니다).
9분 1초에 #6은 왜 적으시는건지 잘 모르겠습니다!
그냥 결과가 6이 나올 것이라고 주석으로 나타낸 것입니다...!
막 해봤는데 ^ 가 무슨 기호 처럼 4 ^ 7이 3이라고 나오는 데 ^기호는 무슨 기호인가요?
4: 0100
7: 0111
에서 ^는 XOR 연산자로 "둘이 겹치지 않는 부분"을 추출하는 아이입니다. 따라서 안 겹치는 0011이 추출되어서 3이 나옵니다. 파이썬은 알고리즘 대회 같은 곳에 나가는 것이 아닌 이상 비트 연산자를 사용하는 프로그래밍 언어는 아니므로 딱히 기억하지 않으셔도 괜찮습니다.
동영상 강좌에서... 제가 생각하기에는,
print(2+2-((2*2)/(2*2))이 아니라,
print(2+2-(((2*2)/2)*2)이 아닐까 생각 됩니다.
오타이신 것 같네요...
print(2+2-((2*2)/(2*2)) = 3.0
print(2+2-(((2*2)/2)*2) = 0.0
으로 결과가 나옵니다.
앗 그렇군요 @_@ ...! 제보 감사드립니다 @_@ ..!!
저도 보면서 이생각 하고 있었네요.
제가 이상한건줄 알았네요 ;;
2%5 는왜 0 이아니라 2인가요?
2 나누기 5는 몫이 0이고 나머지가 2입니다.