Discuvr Python 포맷터

사무 및 데이터

CSV를 Excel로 CSV를 붙여 넣으면 바로 스프레드시트로 보여 주며, 숫자, 날짜, ID는 Excel이 저장해야 하는 형식으로 지정됩니다. 깔끔한 .xlsx는 원할 때만 다운로드하세요. PDF 서명 브라우저에서 PDF에 서명하세요 - 서명을 그리거나 입력하거나 업로드해 원하는 페이지에 배치하고 날짜를 추가한 뒤 서명된 사본을 다운로드하세요. 파일은 기기를 떠나지 않습니다. 가림 처리 PDF, Word, Excel, PowerPoint, 텍스트, 이미지 파일을 영구적으로 가림 처리합니다. 일치 항목과 상자는 가려지는 것이 아니라 파일에서 삭제되며, 다운로드 전에 결과를 다시 확인합니다. 내 IP 확인 접속할 때 웹사이트가 보는 공인 IP 주소, 그 주소가 공유(CGNAT)인지 사설인지, 브라우저가 그 밖에 무엇을 드러내는지 확인하세요. 대소문자 변환기 및 줄 도구 텍스트를 대문자, 소문자, 제목 또는 문장 형식으로 바꾸고, 이름을 camelCase나 snake_case로 변환하며, 중복 줄을 제거하거나 목록을 정렬합니다. 텍스트 비교 두 가지 버전의 텍스트를 붙여넣으면 추가, 삭제, 변경된 모든 줄과 바뀐 단어가 강조 표시됩니다.

글쓰기 및 제안서

어조 다듬기 자신만의 어조를 유지하면서 올바른 문법, 구조, 명확한 표현으로 작성한 글을 재정렬하세요. 채팅 세션 없이 한 번의 붙여넣기, 한 번의 응답으로 완료됩니다. 프리랜서 제안서 생성기 클라이언트의 문제를 설명하고 범위, 가격이 지정된 즉시 발송 가능한 프리랜서 제안서를 몇 초 만에 받으세요.

법률 및 규정 준수

지식재산권법 Q&A 챗봇 인도 지식재산법에 대해 질문하세요 - 상표, 특허, 저작권, 디자인 등. 각 답변 위에 사용한 웹 검색 결과가 표시됩니다. 특허 FER 답변서 생성기 최초 심사보고서(FER)의 거절 이유를 붙여 넣어 구조화된 답변서를 작성하거나, 초안을 업로드해 지식재산 위험을 검토하세요. 정부 지원 제도 자격 확인 도구 짧은 질문 몇 개에 한 번만 답하세요. 로그인하면 답변을 저장해 두므로 매번 다시 입력하지 않고도 어떤 중앙정부 제도에 해당될 수 있는지 확인할 수 있습니다.

개인정보 보호 및 보안

웹사이트 보안 스캔 실제 재현 가능한 보안 취약점이 있는지 도메인을 스캔하세요. 모든 발견 항목에는 관측 결과와 직접 검증할 수 있는 명령어가 함께 제공됩니다. Image Scrub 사진에 공개된 자신에 대한 정보(GPS, 카메라 시리얼 번호, 이름)를 정확히 확인하고 제거하세요. 자르기, 크기 조절, 얼굴 블러 처리, 변환 등 모든 작업은 이미지가 어디에도 저장되지 않고 수행됩니다.

개발자 도구

JSON Formatter 한 번의 붙여넣기로 JSON을 정렬, 축소, 검증하세요. 파싱되지 않을 때의 정확한 줄과 열 위치, 문서에 실제 포함된 요소 수를 제공합니다. Python 포맷터 선택한 줄 길이와 따옴표 처리 방식으로 Black처럼 Python 코드를 재정렬하세요. 정확히 몇 줄이 변경되었는지 카운트도 제공합니다. HTML 뷰어 HTML을 붙여넣고 모바일, 태블릿, 데스크톱 너비의 샌드박스 환경에서 실시간으로 렌더링되는 모습을 확인하세요. 코드 정렬, 압축, 스크립트 콘솔, 마크업 문제 리포트 기능도 제공됩니다. IP 서브넷 계산기 CIDR 표기법이나 넷마스크가 있는 IP를 입력하면 네트워크 주소, 브로드캐스트 주소, 사용 가능한 호스트 범위, 전체 주소 수를 즉시 확인할 수 있습니다. 인코딩 / 디코딩 입력하는 즉시 Base64, Base64URL, URL 퍼센트 인코딩, HTML 엔티티, 16진수를 인코딩하거나 디코딩합니다. UTF-8을 완벽히 지원합니다. Unix 타임스탬프 변환기 초, 밀리초, 마이크로초, 나노초 단위의 Unix epoch 타임스탬프를 UTC 또는 세계 주요 시간대의 날짜로 변환하고, 날짜를 다시 타임스탬프로 변환합니다. 시스템 다이어그램 메이커 User -> API -> Database처럼 화살표를 쓰면 배치가 끝난 아키텍처나 흐름 다이어그램이 나옵니다. 그룹을 접으면 큰 그림, 단계에 번호를 매기면 상세 흐름이 됩니다.

AI 작업대

AI 플레이그라운드 여러 LLM 제공업체의 응답을 실시간으로 나란히 비교하세요. 보유하신 API 키를 사용합니다. 에이전트 플레이그라운드 웹 검색, 계산기, URL 가져오기 등 도구를 사용하는 AI 에이전트를 여러 제공업체에서 시험해 보세요.

학습

Study Buddy 첫 공부 시작일부터 최종 제안 수락까지, 주요 테크 직군 면접을 준비하는 코치: DSA, LLD, 시스템 디자인, 행동 면접 및 AI 보조 코딩 학습 계획, 모의 면접, 이력서 검토, 지원 현황 관리 및 제안 비교 기능을 제공합니다.

일상 도우미

QR 코드 생성기 텍스트, URL, WiFi 정보 또는 연락처로 QR 코드를 만드세요 - PNG 이미지나 SVG 벡터로, 원하는 오류 정정 수준으로. 단위 변환기 길이, 무게, 온도, 부피, 속도, 면적, 에너지 단위를 즉시 변환하세요. 40가지 이상의 단위 유형을 즉시 확인할 수 있습니다. 비밀번호 생성기 암호학적으로 안전한 난수로 무작위 비밀번호를 생성하고, 길이와 문자 종류를 조정하며, 강도를 비트 엔트로피로 확인하세요. 단어 수 세기 및 가독성 분석기 단어, 문자, 문장, 단락 수를 세고 읽는 시간을 추정하며 가독성을 평가합니다 - 중국어, 일본어, 한국어, 태국어 텍스트에는 실제 문자 단위 계산을 사용합니다. 나이 / 날짜 차이 계산기 누군가의 정확한 나이나 임의의 두 날짜 사이의 정확한 차이(년, 월, 일)와 총 일수 및 주 수를 확인하세요. 날짜 차이 계산기 두 날짜 사이의 일, 주, 개월, 근무일 수를 세거나 날짜에 일수를 더하고 뺄 수 있습니다. 백분율 계산기 Y의 X%, 한 숫자가 다른 숫자의 몇 퍼센트인지, 두 숫자 사이의 퍼센트 증가 또는 감소, 역퍼센트를 계산합니다 - 하나의 도구에 담긴 네 가지 일반적인 계산. SIP 계산기 연간 증액, 초기 목돈, 물가 상승을 반영해 월 투자금이 얼마로 불어나는지 보거나 목표에 필요한 월 금액을 구하세요. BMI 계산기 키와 몸무게로 체질량지수(BMI)를 미터법 또는 야드파운드법 단위로 계산하고, WHO 성인 기준(저체중, 정상, 과체중, 비만)에 따라 분류합니다.
로그인 시작하기
모든 도구개발자 도구

Python 포맷터

Black과 동일한 방식으로 Python 코드를 재정렬하고 변경된 줄 수를 정확히 확인하세요.

작성한 코드

0자

서식 지정됨

 

정보 Python 포맷터

이 도구는 대부분의 Python 프로젝트가 이미 합의한 포맷터인 Black을, 붙여넣은 내용에 대해 당신이 선택한 줄 길이와 인용 부호 처리 방식으로 실행합니다. 파일을 파싱할 수 없으면 어느 줄인지 알려주고, 이미 포맷되어 있다면 뭔가 한 것처럼 꾸미지 않고 그 사실도 알려줍니다.

기능

  • 79, 88, 100 또는 120열로 Black 포맷팅.
  • "검사만 하기" 모드: 파일을 변경하지 않고도 변경 여부를 알 수 있습니다.
  • 자신만의 인용 부호 스타일을 유지하거나, Black이 정규화하도록 둘 수 있습니다.
  • 컬렉션을 펼쳐진 상태로 유지하는 매직 트레일링 커마를 따르거나 무시할 수 있습니다.
  • 문법이 버전에 민감할 때 특정 Python 버전을 대상으로 지정할 수 있습니다.
  • 구문 오류는 줄, 열, 주변 코드를 알려줍니다.
  • 추가되고 삭제된 줄 수와 파일의 형태를 알려줍니다.

작동 방식

  1. 1 코드를, 또는 파일 하나 분량을 붙여넣습니다.
  2. 2 줄 길이와 관심 있는 옵션을 선택합니다.
  3. 3 포맷을 누른 다음 결과를 복사하거나 다운로드합니다.

당신의 코드는 결코 실행되지 않습니다

Python을 포맷하는 데 그것을 실행할 필요는 없습니다. 코드는 구문 트리로 파싱되고 그 트리로부터 완전히 메모리상에서 다시 작성됩니다 - 파일에 쓰여지지도, 임포트되지도, 실행되지도 않습니다. 붙여넣은 내용을 실행하는 포맷터가 있다면, 그것은 텍스트 상자가 달린 원격 셸일 뿐입니다.

왜 Black인가, 우리만의 의견이 아닌 이유

Black은 AST를 보존하는 변환입니다. 나오는 코드는 들어간 코드와 같은 프로그램입니다. 이 속성이야말로 포맷터를 신뢰할 수 있는 유일한 이유이며, 이 도구의 어느 부분에도 언어 모델이 관여하지 않는 이유입니다. 코드를 정리하라는 요청을 받은 모델은 작업 중에 가끔 한 줄을 다시 쓰게 되며, 작동하는 코드에 대한 조용한 변경은 포맷터가 감당할 수 없는 단 하나의 실패입니다.

검사만 하기

CI가 묻는 것과 같은 질문입니다. 이 파일이 변경될까요? 검사 모드는 원본 코드를 그대로 반환하고 Black이 그것을 다시 포맷했을지, 몇 줄이나 바뀌었을지를 알려줍니다. 로컬에서 재현할 수 없는 파일에서 파이프라인이 실패하는 이유를 빠르게 알아내는 방법입니다.

매직 마지막 쉼표와 fmt: off 실전 예시

마지막 항목 뒤의 쉼표는 Black에게 호출이나 컬렉션을 한 줄에 한 항목씩 유지하라고 알려 줍니다. result = compute(alpha, beta,)는 네 줄로 돌아오며 alpha,와 beta,가 각각 자기 줄에 놓입니다. 매직 마지막 쉼표 무시를 체크하면 같은 입력이 줄 길이에 들어가는 한 result = compute(alpha, beta)가 됩니다. 행렬처럼 손으로 정렬한 블록을 지키려면 그 위 줄에 # fmt: off, 아래에 # fmt: on을 쓰세요. Black은 그 사이를 작성한 그대로 둡니다. 줄 끝의 # fmt: skip은 그 한 줄만 보호합니다. 모두 Black 자체의 주석이라 프로젝트 CI가 Black을 실행할 때도 그대로 적용됩니다.

질문

내 코드가 업로드되거나 저장되나요?

서버로 전송되어 메모리에서 포맷된 뒤 같은 응답으로 반환됩니다. 디스크에 기록되거나 캐시되거나 로그에 남는 것은 전혀 없으며, 사용 기록에는 크기, 옵션, 변경된 줄 수 같은 개수만 남고 코드 자체는 절대 남지 않습니다.

포맷팅이 내 코드가 하는 일을 바꾸나요?

아니요. Black은 동작이 아니라 레이아웃을 바꾸지만, 공백만 옮기는 것은 아닙니다. 불필요한 괄호를 없애고(x = (1)은 x = 1로), 숫자의 접두사와 지수를 소문자로 바꾸며(0XABCDEF는 0xABCDEF로, 1E5는 1e5로), 호출을 여러 줄로 나눌 때 끝에 쉼표를 붙이고, 연속된 빈 줄을 줄이며, docstring 안쪽의 공백을 잘라냅니다(""" Doc. """는 """Doc."""로). 마지막 변경은 __doc__의 텍스트를 바꾸므로, 코드가 자기 docstring을 읽을 때만 영향이 있습니다.

왜 내 파일이 전혀 다시 포맷되지 않았나요?

당신이 선택한 줄 길이로 이미 포맷되어 있었기 때문입니다. 이 도구는 조용히 복사본을 반환하는 대신 "이미 포맷됨"이라고 알려줍니다.

제 import를 정렬하나요?

아니요. import 정렬은 Black의 일이 아니라 isort의 일이며, 둘은 충분히 자주 의견이 달라서 여기서 그렇게 했다면 당신을 놀라게 했을 것입니다.

구문 오류가 있는 파일을 포맷할 수 있나요?

어떤 포맷터도 할 수 없습니다 - 파싱할 수 없는 파일에는 다시 쓸 구조가 없습니다. 줄, 열, 주변 코드를 받아서 고친 뒤 다시 시도할 수 있습니다.

PEP 8을 따르나요?

Black은 한 가지 잘 알려진 예외를 제외하면 PEP 8과 호환됩니다. 기본 줄 길이는 79가 아니라 88입니다. 더 엄격한 수치가 필요하면 줄 길이 선택기에서 79를 고르세요.

얼마나 큰 파일을 포맷할 수 있나요?

한 번에 최대 400,000자입니다. 포맷은 10초가 지나면 중단되며, 이는 매우 크거나 반복이 심한 파일에서만 일어납니다. IP 주소마다 10분에 30번까지 포맷할 수 있습니다.

에디터, pre-commit, CI에서 같은 포맷 결과를 얻으려면 어떻게 하나요?

이 페이지는 Black을 실행하며, 넓은 화면에서는 페이지 상단 헤더에 버전이 표시됩니다. Black은 프로젝트 설정을 pyproject.toml의 [tool.black] 섹션에서 옵션의 긴 이름으로 읽습니다. 선택한 "줄 길이"에는 line-length = 88, "작은따옴표 유지"를 체크했다면 skip-string-normalization = true, "매직 마지막 쉼표 무시"에는 skip-magic-trailing-comma = true, "대상"에서 고정한 버전에는 target-version = ["py311"]을 씁니다. 에디터 플러그인과 pre-commit 훅도 같은 파일을 읽습니다. 포맷은 black . 으로, CI에서는 black --check --diff . 를 실행하세요. 아무것도 바꾸지 않고, 다시 포맷될 파일이 있으면 종료 코드 1로 끝납니다. 매 달력 연도의 첫 릴리스에서 안정 스타일이 바뀔 수 있으므로 이 페이지와 같은 Black 버전으로 고정하세요.

결과가 Ruff 포맷터(ruff format)와 같나요?

거의 항상 같지만 바이트 단위로 같지는 않습니다. Ruff 포맷터는 Black을 그대로 대체하도록 설계되었고, Ruff 문서에 따르면 Django나 Zulip처럼 Black으로 포맷된 대규모 프로젝트에서 99.9%가 넘는 줄이 동일하게 나옵니다. Black을 거친 적 없는 코드, 특히 줄 끝 주석에서는 차이가 더 크며, 의도적인 차이는 문서에 정리되어 있습니다. 기본 줄 길이도 88이며 [tool.ruff]의 line-length로 설정합니다. [tool.ruff.format]의 quote-style = "preserve"는 "작은따옴표 유지"에, skip-magic-trailing-comma = true는 "매직 마지막 쉼표 무시"에 해당합니다. CI에서 ruff format --check를 실행한다면 이 페이지가 아니라 Ruff로 파일을 확인하세요.