본문 바로가기

Python2.37

Python 문자열에서 한 문자를 변경하는 것, Changing one character in a string 질문 파이썬에서 문자열에서 문자를 바꾸는 가장 쉬운 방법은 무엇인가요? 예를 들어: text = "abcdefg"; text[1] = "Z"; ^ 답변 문자열을 수정하지 마세요. 리스트로 작업하고 필요할 때만 문자열로 변환하세요. >>> s = list("Hello zorld") >>> s ['H', 'e', 'l', 'l', 'o', ' ', 'z', 'o', 'r', 'l', 'd'] >>> s[6] = 'W' >>> s ['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd'] >>> "".join(s) 'Hello World' 파이썬 문자열은 변경할 수 없습니다. 이에는 다양한 이유가 있습니다. 가능한 한 리스트를 사용하고, 필요한 경우에만 문자열로 변환하.. 2023. 10. 9.
Python 중첩된 딕셔너리를 예쁘게 출력하는 방법은 무엇인가요?, How to pretty print nested dictionaries? 질문 파이썬에서 depth가 약 4인 딕셔너리를 어떻게 예쁘게 출력할 수 있을까요? pprint()를 사용하여 예쁘게 출력을 시도해보았지만 작동하지 않았습니다: import pprint pp = pprint.PrettyPrinter(indent=4) pp.pprint(mydict) 저는 각 중첩에 대해 들여쓰기 ("\t")를 원하며, 다음과 같은 결과를 얻고 싶습니다: key1 value1 value2 key2 value1 value2 어떻게 이를 할 수 있을까요? 답변 내 첫 번째 생각은 JSON 직렬화기가 중첩된 사전에 대해 아마도 꽤 잘 작동한다는 것이었으므로, 그걸 이용해서 속임수를 써볼까 생각했습니다: >>> import json >>> print(json.dumps({'a':2, 'b':{'x.. 2023. 10. 8.
Python 인자로 튜플을 확장하기, Expanding tuples into arguments 질문 어떤 함수가 다음과 같다고 가정해봅시다: def myfun(a, b, c): return (a * 2, b + c, c + b) 튜플 some_tuple = (1, "foo", "bar")이 주어졌을 때, some_tuple을 사용하여 myfun을 호출하는 방법은 무엇인가요? 이렇게 하면 결과값 (2, "foobar", "barfoo")가 출력되어야 합니다. 저는 myfun이 튜플을 직접 받도록 정의할 수도 있지만, 기존의 myfun을 호출하고 싶습니다. 참고: 함수 호출에서 ** (두 개의 별표/별표)와 * (별표/별표)는 무엇을 의미하나요?. 답변 myfun(*some_tuple)는 정확히 요청한 대로 동작합니다. * 연산자는 단순히 튜플(또는 어떤 반복 가능한 객체)을 풀어서 함수에 위치 인수.. 2023. 10. 5.
Python 문자열의 뒷부분에서 부분 문자열을 어떻게 제거하나요 (문자열의 접미사를 제거하나요)?, How do I remove a substring from the end of a string (remove a suffix of the string)? 질문 다음과 같은 코드가 있습니다: url = 'abcdc.com' print(url.strip('.com')) 원래 예상한 결과: abcdc 실제로 얻은 결과: abcd 이제 다음을 시도합니다 url.rsplit('.com', 1) 더 나은 방법이 있을까요? 첫 번째 시도가 무엇을 하는지에 대한 구체적인 설명은 Python에서 .strip/.rstrip/.lstrip 문자열 메서드가 어떻게 작동하는지에 대한 질문을 참조하세요. 답변 strip은 "이 부분 문자열을 제거하라"는 의미가 아닙니다. x.strip(y)는 y를 문자 집합으로 취급하고 x의 양 끝에서 해당 집합에 속하는 문자를 제거합니다. Python 3.9 이상에서는 removeprefix와 removesuffix 메서드를 사용하여 문자열의 .. 2023. 9. 19.