본문 바로가기

Python/Python FAQ540

Python의 open()은 파일이 존재하지 않으면 파일을 생성하지 않습니다., open() in Python does not create a file if it doesn't exist 질문 존재하면 읽기/쓰기로 파일을 열고, 그렇지 않으면 만들어서 읽기/쓰기로 열려면 어떤 것이 가장 좋을까요? 내가 읽은 것으로는 file = open('myfile.dat', 'rw')이렇게 하면 되는 거 아니에요? 그게 제 컴퓨터에서 (파이썬 2.6.2) 작동하지 않는데, 이게 버전 문제인지, 아니면 그렇게 작동하지 않는 건 아닌지 궁금합니다. 요점은, 그냥 문제를 해결할 수 있는 방법이 필요합니다. 다른 것도 궁금하지만, 열기 부분만 잘 해결할 수 있는 좋은 방법이 필요합니다. 폴더는 사용자와 그룹에 의해 쓰기 가능하게 설정되어 있었고, 다른 사용자는 쓰기 권한이 없었습니다 (리눅스 시스템이기 때문에 권한 775라는 뜻입니다). 정확한 오류 메시지는 다음과 같습니다: IOError: no such .. 2023. 6. 10.
Python 하위 목록 전체에 영향을 미치는 목록의 변경사항이 예기치 않게 반영됩니다., List of lists changes reflected across sublists unexpectedly 질문 나는 리스트의 리스트를 만들었다: >>> xs = [[1] * 4] * 3 >>> print(xs) [[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]] 그리고 나서, 내부 값 중 하나를 변경했다: >>> xs[0][0] = 5 >>> print(xs) [[5, 1, 1, 1], [5, 1, 1, 1], [5, 1, 1, 1]] 왜 각 하위 리스트의 첫 번째 요소가 5로 변경되었을까? 또한 참조: 어떻게 할당 후 예상치 못한 변경이 발생하지 않도록 리스트를 복제할 수 있나요? 문제에 대한 해결책 각 반복에서 마지막 추가된 값만 저장하는 사전의 리스트에 대한 유사한 문제 Python에서 빈 리스트의 사전을 초기화하는 방법은 무엇인가요? 리스트의 사전에 대한 유사한 문제 답변 [.. 2023. 6. 9.
Python 파이썬 함수 정의에서 ->는 무엇을 의미하는가요?, What does -> mean in Python function definitions? 질문 최근에 Python 3.3 문법 명세를 살펴보면서 흥미로운 것을 발견했습니다: funcdef: 'def' NAME parameters ['->' test] ':' suite Python 2에서 선택적인 '화살표' 블록이 없었고 Python 3에서의 의미에 대한 정보를 찾을 수 없었습니다. 그러나 이것은 올바른 Python이며 인터프리터에서도 인식됩니다: def f(x) -> 123: return x 이것이 어떤 종류의 사전 조건 구문일 수도 있다고 생각했지만: 여기서 x를 테스트할 수 없습니다. 아직 정의되지 않았기 때문입니다. 화살표 뒤에 무엇을 넣어도 (예: 2 < 1) 함수 동작에 영향을 미치지 않습니다. 이 구문 스타일에 익숙한 누군가가 설명해 줄 수 있을까요? 답변 이것은 함수 주석입니다... 2023. 6. 9.
Python 파이썬 setup.py 언인스톨, python setup.py uninstall 질문 저는 python setup.py install으로 파이썬 패키지를 설치했습니다. 어떻게 제거하나요? 답변 Note: python setup.py install 사용을 피하십시오. 대신 pip install .을 사용하십시오. 수동으로 모든 파일을 제거하고, 설치가 수동으로 수행한 기타 작업도 취소해야 합니다. 모든 파일 목록을 모르는 경우 --record 옵션을 사용하여 다시 설치하고 생성된 목록을 확인할 수 있습니다. 설치된 파일 목록을 기록하려면 다음을 사용할 수 있습니다: python setup.py install --record files.txt 제거하려면 xargs를 사용하여 제거할 수 있습니다: xargs rm -rf < files.txt 또는 Windows를 실행 중인 경우 Power.. 2023. 6. 9.