1번째 줄: |
1번째 줄: |
| 문자 자료에 대한 문서. | | 문자 자료에 대한 문서. |
| | | |
− | <youtube>http://id8436.iptime.org:2786/mediawiki/index.php/3._%EB%AC%B8%EC%9E%90%EC%9E%90%EB%A3%8C%ED%98%95</youtube> | + | <youtube>https://www.youtube.com/watch?v=ur6GTMaAYw0&t=65s</youtube> |
| | | |
| ==이스케이프 코드== | | ==이스케이프 코드== |
25번째 줄: |
25번째 줄: |
| |\" | | |\" |
| |쌍따옴표 | | |쌍따옴표 |
− | |}문자열을 'C:\경로\note' 라고 기입할 때 \n을 개행으로 인식하여 줄을 바꾸어버리곤 한다. 이러한 사태를 막기 위해선 문자열 앞에 <code>r'내용'</code> 형태로 앞에 r을 붙이면 이스케이프 코드를 사용하지 않고 입력한 그대로 나타난다. | + | |}문자열을 'C:\경로\note' 라고 기입할 때 \n을 개행으로 인식하여 줄을 바꾸어버리곤 한다. 이러한 사태를 막기 위해선 문자열 앞에 <code>r'내용'</code> 형태로 앞에 r을 붙이면 이스케이프 코드를 사용하지 않고 입력한 그대로 나타난다.(r은 Raw string을 의미하는 것) |
| =문자열의 사용 = | | =문자열의 사용 = |
| ===따옴표 사용=== | | ===따옴표 사용=== |
91번째 줄: |
91번째 줄: |
| | | | | |
| |} | | |} |
− | ===다른 방식의 포메팅=== | + | ===format=== |
| 문자열 포멧코드 대신 <code>"오늘 {}교시는 {}시간입니다.".format(5, "과학")</code> 형태로 쓸 수도 있다. 데이터가 무너질 확률은 커지지만, 유연성이 크다. | | 문자열 포멧코드 대신 <code>"오늘 {}교시는 {}시간입니다.".format(5, "과학")</code> 형태로 쓸 수도 있다. 데이터가 무너질 확률은 커지지만, 유연성이 크다. |
| | | |
− | 이게 진짜 유용하다. 웹크롤링이나 문자를 다루는 데 굉장한 편의성을 제공한다. | + | 이게 진짜 유용하다. 웹크롤링이나 문자를 다루는 데 굉장한 편의성을 제공한다. <code>"제가 사는 도시는 {city} 입니다. 이곳은 {deg}도 입니다.".format(city="값", deg=5)</code> 형태로 기입도 가능하다. |
| + | |
| + | ==== 숫자 3자리 마다 콤마 찍기 ==== |
| + | 금액을 표현할 때 숫자 3개마다 콤마가 있으면 가독성이 올라간다. <code>format(대상숫자, ',')</code> 형태로 간단하게 구현이 가능하다. |
| + | |
| + | === f-string 표현 === |
| + | 문자열 앞에 f를 붙여 <code>f"{변수}는 {변수2}입니다."</code> 형태로 직관적인 사용이 가능하다. |
| + | |
| ==문자열 관련함수== | | ==문자열 관련함수== |
| {| class="wikitable" | | {| class="wikitable" |
117번째 줄: |
124번째 줄: |
| |replace | | |replace |
| |특정 문자를 바꾸고자 할 때. | | |특정 문자를 바꾸고자 할 때. |
− | |문자열.replace("찾을문자", "바꿀문자") | + | |문자열 = 문자열.replace("찾을문자", "바꿀문자") |
| |- | | |- |
| |split | | |split |
| |특정 문자열을 기준으로 문자들을 나누고자 할 때. | | |특정 문자열을 기준으로 문자들을 나누고자 할 때. |
− | |문자열.split("나눌문자") | + | |문자열 = 문자열.split("나눌문자") |
| |- | | |- |
| |join | | |join |
| |특정 문자열을 사이에 두고 합칠 때. | | |특정 문자열을 사이에 두고 합칠 때. |
| ex) 2021, 03, 22 형태의 파편화된 날짜데이터를 보기 좋게 합쳐줌. | | ex) 2021, 03, 22 형태의 파편화된 날짜데이터를 보기 좋게 합쳐줌. |
− | |'사이문자'.join(리스트) | + | |문자열 = '사이문자'.join(리스트) |
| |} | | |} |
| ==정규표현식== | | ==정규표현식== |
148번째 줄: |
155번째 줄: |
| </syntaxhighlight> | | </syntaxhighlight> |
| |- | | |- |
− | | | + | |특수문자를 지정하고 싶을 때 |
− | | | + | |!, ,, ?, *등의 문자를 매칭할 때. |
− | | | + | |영어와 ?, !, ,, 만 뽑아낼때.<syntaxhighlight lang="python"> |
| + | import re # 정규표현식을 사용하게 해주는 모듈. |
| + | ... |
| + | for one_word in text: |
| + | filtered = re.sub('[^a-zA-Z0-9\?\!\,\.]', ' ', one_word) # 글자 하나하나 비교해 영어+숫자만 추출. 아니면 공백. |
| + | filtered_text = filtered_text + filtered # 통과된 글자만 담아준다. |
| + | |
| + | </syntaxhighlight> |
| |- | | |- |
| | | | | |