본문 바로가기

분류 전체보기980

Python jinja2 템플릿에서 리스트의 길이를 가져옵니다., Get lengths of a list in a jinja2 template 질문 jinj2 템플릿에서 리스트의 요소 수를 어떻게 얻을 수 있을까요? 예를 들어, Python에서는 다음과 같이 할 수 있습니다: print(template.render(products=[???])) 그리고 jinja2에서는 다음과 같습니다. You have {{what goes here?}} products 답변 당신은 {{products|length}}개의 제품을 가지고 있습니다. 또한 다음과 같은 문법을 사용할 수도 있습니다. {% if products|length > 1 %} jinja2의 내장 필터는 여기에 문서화되어 있으며, 특히 이미 찾은 것처럼 length (그리고 그 동의어인 count)는 다음과 같이 문서화되어 있습니다: 시퀀스나 매핑의 항목 수를 반환합니다. 그러므로, 템플릿에서 .. 2023. 11. 14.
Python 문자열의 여러 부분 문자열을 어떻게 대체할 수 있나요?, How to replace multiple substrings of a string? 질문 나는 .replace 함수를 사용하여 여러 문자열을 교체하고 싶습니다. 현재 다음과 같습니다. string.replace("condition1", "") 하지만 다음과 같은 것을 원합니다. string.replace("condition1", "").replace("condition2", "text") 그러나 이는 좋은 구문 같지 않습니다. 이를 올바르게 수행하는 방법은 무엇인가요? grep/regex에서 특정 검색 문자열에 대한 필드를 교체하는 것과 같이 \1과 \2를 사용할 수 있는 방법이 있을까요? 답변 여기에는 정규 표현식을 사용하여 작업을 수행하는 간단한 예제가 있습니다: import re rep = {"condition1": "", "condition2": "text"} # 원하는 대체 값.. 2023. 11. 14.
Python 리스트의 모든 문자열을 정수로 변환하는 방법은 무엇인가요? [중복], How do I convert all strings in a list of lists to integers? [duplicate] 질문 나는 문자열을 포함하는 튜플의 튜플이 있습니다: T1 = (('13', '17', '18', '21', '32'), ('07', '11', '13', '14', '28'), ('01', '05', '06', '08', '15', '16')) 나는 모든 문자열 요소를 정수로 변환하고 다시 리스트의 리스트에 넣고 싶습니다: T2 = [[13, 17, 18, 21, 32], [7, 11, 13, 14, 28], [1, 5, 6, 8, 15, 16]] 답변 int()은 문자열을 정수 값으로 변환하는 Python의 표준 내장 함수입니다. 인자로 숫자를 포함한 문자열을 전달하여 호출하면 정수로 변환된 숫자를 반환합니다: >>> int("1") + 1 2 만약 리스트 T1의 구조를 알고 있다면(리스트가 단순히 .. 2023. 11. 14.
Python 소스에서 UTF-8 인코딩을 사용하는 작업 [중복], Working with UTF-8 encoding in Python source [duplicate] 질문 고려하십시오: $ cat bla.py u = unicode('d…') s = u.encode('utf-8') print s $ python bla.py File "bla.py", line 1 SyntaxError: Non-ASCII character '\xe2' in file bla.py on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details 소스 코드에서 UTF-8 문자열을 어떻게 선언할 수 있을까요? 답변 파이썬 3에서는 UTF-8이 기본 소스 인코딩입니다 (참조: PEP 3120), 따라서 유니코드 문자를 어디에서나 사용할 수 있습니다. 파이썬 2에서는 소스 코드 헤더에서 선언할 수.. 2023. 11. 14.