나무모에 미러 (일반/어두운 화면)
최근 수정 시각 : 2024-11-07 21:18:16

쌍점

1. 문장 부호
1.1. 용례1.2. 영어1.3. 중국어
2. 나무위키에서3. 수학 기호4. 프로그래밍
4.1. C4.2. Java4.3. C++4.4. PHP4.5. Python4.6. Haskell4.7. 선택적 타입 명시
5. 관련 문서

1. 문장 부호


문서가 있는 문장 부호
{{{#!wiki style="margin:0 -10px -5px; min-height:calc(1.5em + 5px)"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin:-5px -1px -11px"
배경 음영: 한글 맞춤법 부록에 수록되지 않은 문장 부호
동아시아 (CJK)
문장 부호
겹낫표
『 』
홑낫표
「 」
모점
}}}}}}}}} ||
<rowcolor=#000,#fff> :
Colon
쌍점은 문장 부호의 일종이다.
<rowcolor=#000,#fff> 틀린 표기 발표자 : 아무개 발표자:아무개 발표자 :아무개
<rowcolor=#000,#fff> 옳은 표기 발표자: 아무개

일상생활 및 나무위키에선 잘못된 사용 방법이 많이 퍼져 있다. 나무위키에서는 리스트나 문단 제목에 쌍점을 자주 쓰곤 하는데, 앞까지 띄어서 쓴 경우를 어렵지 않게 발견할 수 있다. 더구나 바른 표기를 그른 표기로 오해하는 사람도 있으며 의도적으로 틀린 표기로 고치는 편집도 많이 보인다. 방송에서도 이를 틀리는 경우가 비일비재하다. 쌍점은 앞엔 붙여서, 뒤는 한 칸 띄어서 써야 한다. 국립국어원에서 내놓은 쌍점의 띄어쓰기 관련 답변을 참고하면 앞은 붙여서 씀을 알 수 있으며, 2015년에 맞춤법이 개정되면서 쌍점의 띄어쓰기 규정이 새로 추가되었다.[1] 이는 쉼표와 용법이 같으며 A, B를 A , B 형태로 잘 쓰지 않는 걸 생각하면 헷갈리지 않는다.[2]

다만 대중 매체 등에서는 정식 유통된 원작, 미디어 믹스, 형식으로 제작된 작품 중 정식 유통된 것을 우선하기 때문에 '발표자:홍길동'이나 '발표자 : 홍길동' 같은 것도 표제어로 쓸 수 있다.[3] 프랑스어 등의 일부 언어권에선 앞뒤 둘 다 띄어쓰는 것을 허용하는 경우도 있다.

파일 이름으로 사용할 수 없는 문자 중 하나다.[4]

1.1. 용례

시간에서 시와 분, 분과 초의 구분(예: 오전 10:30)이나 책에서 장과 절의 구분에 사용할 수 있다. 의존명사 '대(對, Versus)'를 대체해서도 사용할 수 있는데, 이때는 앞과 뒤를 붙여 쓴다.
대화문 등에서 인물 이름의 오른쪽에 쓰인다.[5]

세부 항목의 나열, 예시 등으로 쓰인다.(한국어, 영어 공통)

IPv6에서 구분자로 쓰인다.

1.2. 영어

영어권에서는 쌍점이 문장 부호로 많이 쓰이기 때문에, 한국어권 화자들처럼 앞을 띄어 쓰는 실수는 거의 보이지 않는다. 쉼표(,)나 마침표(.), 세미 콜론(;) 등을 쓸 때 앞을 띄어 쓰면 이상한 것처럼 쌍점 역시 하나의 문장 부호로 받아들이는 것. 목록을 나열할 때 등 제한적으로 사용되는 한국어와 달리 영어에서는 일반 문장에서도 다양하게 활용된다.

목록을 늘어놓을 때나 인용문을 표시하기 위해서 쓴다. 이는 콜론 뒤의 문장을 주목시키는 효과를 낸다.
1) The garden contained the following plants: carrots, lettuce, and tomatos.
2) Don't forget my grandpa's words: "Look before you leap."

콜론 앞에 있는 문장에 대해, 보충 설명해 줄 때 쓴다.
1) Love is blind: sometimes it keeps us from seeing the truth.
2) Many of the students worked in the evenings: six of them were waitresses.

부제목을 나타낼 때 많이 쓰인다.[6] 특히 드라마나 영화 제목에도 많이 쓰이는데, 어벤져스: 에이지 오브 울트론이나 어벤져스: 엔드게임, 스파이더맨: 파 프롬 홈이나 스파이더맨: 노 웨이 홈 등 시리즈물로 나오는 작품들에서 자주 쓰인다. 마블 시네마틱 유니버스에서 자주 써먹었고, 굳이 시리즈물이 아니더라도 영화의 부제를 이렇게 표기하는 방식으로 쓴다.

1.3. 중국어

중국어에서도 사용되는데, 내포되는 종류를 열거하거나, 작은 표제 뒤에 간단한 설명을 붙일 때 사용된다. 이를 冒号[màohào, 모호]라고 한다. 아래는 예문.[7]
曹操曾发誓曰:我平生有二愿:一愿扫平四海,成就帝业;二愿得江东二桥置于铜雀台,以娱万年,虽死无恨矣!
일찍이 조조가 맹세하길, "내게 2가지 평생 소원이 있으니, 하나는 천하를 평정하여 대업을 이루는 것이며, 또 하나는 강동이교를 얻어 동작대에서 평생을 향유한다면, 죽어도 한이 없겠도다!"고 하였소.

2. 나무위키에서

나무위키에서는 이나 분류, 템플릿, 나무위키(나무위키:대문 등 나무위키 관련 문서), 사용자와 내용 사이를 구분하는 기호로서 주로 쓰인다. 틀이나 분류 문서로 링크를 걸려면 :분류와 같은 식으로 앞에 쌍점을 걸어야 한다.

3. 수학 기호

[math(f \colon \mathbb{R}\mapsto\mathbb{R})]
함수 이름 뒤에 함수의 정의역과 공역을 나타낼 때 쓰인다.
[math(\mathbb{R}^+ := \{ x\in\mathbb{R} : x>0 \})]
집합을 조건제시법으로 나타낼 때의 경계선으로 보통 : 기호를 쓰며, 가끔 |도 쓰인다.

또한 등호 바로 앞에 :이 붙으면 좌변의 대상을 우변과 같이 정의한다는 뜻이 된다.

비례식을 세울 때 주로 사용하기도 한다. [math(2 : 4 = 3 : x)] 이면 [math(x = 6)] 이런 식으로. 다만, 수학용 기호 '∶'(U+2236)는 유니코드에서는 쌍점(:, U+003A)과는 별개의 문자로 따로 배정되어있는데, 일반적으로는 그냥 쌍점(:, U+003A)으로 나타내는 경우가 훨씬 더 많다.

4. 프로그래밍

당신이 프로그래밍을 한다면 평생 타이핑할 :이 몇 배로 늘어날 수가 있다. 특히 OOP에서 쌍반점(::)는 상당히 자주 쓰인다.

4.1. C

switch-case 문에서 'case'가 들어가는 줄의 끝에 쓰인다.
#!syntax cpp
switch(val)
{
case 0:
    DoSomething1();
    break;
case 1:
    DoSomething2();
    break;
default:
    DoSomething3();
}

goto문에도 쓰이긴 하는데, goto 자체가 사용하지 않기를 권장되는 문법이다 보니 goto 쓰려고 : 타이핑하는 경우는 거의 없다.

4.2. Java

배열 객체나 Iterable 객체의 for-each문을 통한 참조
#!syntax java
for (Object a : array) {
    System.out.println(a);
}

다중 반복문에서 지정한 반복문을 끝내거나 continue를 사용하기 위한 label문에서의 사용
#!syntax java
labelA: for (int i = 0; i < 100; i++) {
    for (int j = 0; j < 100; j++) {
        if (j > 50 && j == i) {
            break labelA; // continue labelA;
        }
    }
}

람다식의 메소드 참조
#!syntax java
IntBinaryOperator op = (a, b) -> Main.staticvoid(a, b);
IntBinaryOperator op2 = Main::staticvoid;
// 두 코드가 동일하게 작동

4.3. C++

C++에서 자주 쓰인다.

네임스페이스(namespace) 안에 있는 식별자를 사용할 때(가리킬 때)는 아래처럼 사용한다.
네임스페이스이름::식별자
전역변수와 지역변수의 이름이 겹칠 때 전역변수를 사용하려면 아래처럼 변수명 앞에 ::를 붙인다.
::변수명
문자열을 출력하는 예제는 다음과 같다.
#!syntax cpp
std::string txt = "Hello World!";
std::cout << txt << std::endl;

4.4. PHP

C와 비슷한데, PHP에서는 내부적으로 쌍쌍점을 히브리어T_PAAMAYIM_NEKUDOTAYIM으로 쓴다.#

4.5. Python

클래스 정의, 메서드 정의, 함수 정의, 조건문, 반복문 등에서 쓰인다. 아래는 계산기를 만들면서 사용된 예제이다.
#!syntax python

answers = []
x = 0
#클래스 정의
class calculator:
    #메서드 정의
    def add(self, num1, num2):
        self.num1 = num1
        self.num2 = num2
        return num1+num2
    def sub(self, num1, num2):
        self.num1 = num1
        self.num2 = num2
        return num1-num2
    def mul(self, num1, num2):
        self.num1 = num1
        self.num2 = num2
        return num1*num2
    def div(self, num1, num2):
        self.num1 = num1
        self.num2 = num2
        return num1/num2
a = calculator()

#함수 정의
def use_calculator(order, num1, num2):
    #if 조건문
    if order == '더하기':
        return a.add(num1, num2)
    #elif 조건문
    elif order == '빼기':
        return a.sub(num1, num2)
    elif order == '곱하기':
        return a.mul(num1, num2)
    elif order == '나누기':
        return a.div(num1, num2)
    #else 조건문
    else:
        return '잘못된 명령'

#while 반복문
while True:
    order = input('사용할 명령: ')
    if order == '끝내기':
        break
    num1 = float(input('첫번째 숫자: '))
    num2 = float(input('두번째 숫자: '))
    n = use_calculator(order, num1, num2)
    if n == '잘못된 명령':
        pass
    if order == '더하기':
        y = '+'
    if order == '빼기':
        y = '-'
    if order == '곱하기':
        y = 'x'
    if order == '나누기':
        y = '/'
    answers.append('{0} {1} {2} = {3}'.format(num1, y, num2, n))
    print(answers[x])
    x += 1

x = 1
print('=====기록=====')

#for 반복문
for i in answers:
    print('{0}   {1}'.format(x, i))
    x += 1

4.6. Haskell

하스켈에서 쌍점(:)은 리스트 타입을 만들 때 사용하는 값 생성자 value constructor이다. 아래와 같이 중위 연산자처럼 사용할 수 있다. 리스트에 넣을 원소를 쌍점 왼쪽에 적고 오른쪽에 리스트를 적으면 원소가 리스트의 제일 왼쪽에 포함된 새로운 리스트가 리턴된다.
ghci> 1 : [2, 3]
[1, 2, 3]

4.7. 선택적 타입 명시

타입 추론(Type inference)이 존재하는 언어에서 주로 쓰인다. 해당 기능이 없는 언어의 경우 모든 변수, 파라미터 등마다 타입을 명시하기 때문에 '타입명 식별자' 식으로 쓰는 경우가 많고 추론이 있는 언어의 경우 '식별자: 타입명'처럼 쓰거나 '식별자'만 써서 타입을 자동으로 추론하도록 한다. 명시적으로 선언할 경우, 이를 타입 어노테이션(type annotation)이라 부른다.

OCaml
let t: int = 123

TypeScript
#!syntax typescript
const t: number = 123

Rust
#!syntax rust
let t: usize = 123;

5. 관련 문서



[1] 2018년 온라인 가나다 답변[2] 국립국어원 한글 맞춤법의 쌍점에 대한 규정의 붙임 참고.[3] 예시로 넥슨 게임들은 죄다 쌍점 앞을 띄어 쓴다. 메이플스토리는 스킬에 들어간 쌍점 전체가 그런 식이며, 던전앤파이터는 그간 쌍점을 '극 귀검술 : 폭풍식', '계약소환 : 정복자 카시야스'식으로 표기해왔다가 선계 업데이트로 새롭게 나온 仙 에픽을 '仙: 근원을 삼킨 광검'으로 문법에 맞게 표기해 오고 있다. 그래서 던전앤파이터 관련 문서에서는 쌍점의 앞뒤를 모두 띄어 쓴 표기는 나무위키 내 문서에서도 똑같은 표기를 따르며 仙 에픽은 정석 표기를 따르고 있다.[4] 파일명 저장시 사용 불가 문장 부호는 /, \\, ?, :, ", <, >, *이 있다.[5] 국어 화작에서 많이 보인다.[6] '대시(—)'를 쓰기도 한다.[7] 출처: 중국 드라마 삼국연의 31화 중.