혼자보기위한python🌗파일처리(file handling)2️⃣

이풀싹·2023년 5월 10일
0

파이썬_BASIC

목록 보기
5/13
post-thumbnail

😐🙄🍤🍧🍓🔥💧💧💛💛💛

💛 텍스트 한줄씩 읽기

텍스트를 사용해 데이터를 구조적으로 표현할 수 있는 방법으로 CSV,XML,JSON등이 있습니당!
1. CSV: CSV는 쉼표로 구분된 값(Comma Separated Values)을 의미합니다. 이는 표 형식으로 데이터를 저장하기 위한 파일 형식입니다. CSV 파일에서 각 줄은 하나의 레코드를 나타내며, 쉼표로 구분된 각 열은 해당 레코드의 속성을 나타냅니다. 예를 들어, 이름, 성별, 나이와 같은 정보를 각 열에 저장하여 CSV 파일에 저장할 수 있습니다.

첫 번째 줄에 header를 넣어 각 데이터가 무엇을 나타내는지 설명해 줄 수 있습니다! 🔥 최근 기계 학습등에는 이러한 형태로 수십만 명의 데이터를 저장하고 활용하는 경우가 많습니다.

  1. XML: XML은 확장 가능한 마크업 언어(Extensible Markup Language)를 의미합니다. 이는 데이터를 구조화하고 전송하기 위한 파일 형식입니다. XML 파일에서 각 요소는 해당 데이터의 속성을 나타내며, 중첩된 요소는 데이터의 계층 구조를 나타냅니다. XML은 데이터를 사람이 이해하기 쉽게 표현할 수 있으며, 다양한 용도로 사용됩니다.

  2. JSON: JSON은 JavaScript 객체 표기법(JavaScript Object Notation)을 의미합니다. 이는 데이터를 저장하고 전송하기 위한 파일 형식으로, JavaScript 객체와 유사한 구조를 가지고 있습니다. JSON 파일에서 데이터는 중괄호로 묶인 키-값 쌍으로 표현됩니다. 이러한 구조는 데이터를 효율적으로 전송하고 해석할 수 있으며, 웹 애플리케이션에서 자주 사용됩니다.

#💛 랜덤하게 1000명의 키와 몸무게 만들기

import random
hanguls=list("가나다라마바사아자차카타파하")
with open("info.txt","w",encoding='utf-8') as file:
    for i in range(1000):
        name=random.choice(hanguls)+random.choice(hanguls)
        weight=random.randrange(40,100)
        height=random.randrange(140,200)
        
        file.write("{},{},{}\n".format(name,weight,height))
      

import random은 파이썬에서 무작위 숫자를 생성하기 위한 모듈인 random을 가져오는 구문입니다. random 모듈은 난수 생성 및 무작위 선택과 같은 다양한 기능을 제공합니다.

예를 들어, random 모듈을 사용하여 0부터 1 사이의 난수를 생성하려면 random.random()을 호출합니다. 이 외에도, random.randint(a, b)를 사용하여 a와 b 사이의 정수 난수를 생성하거나, random.choice(seq)를 사용하여 시퀀스(seq) 중에서 무작위로 하나의 요소를 선택할 수 있습니다.

따라서 import random 구문을 사용하면 이러한 무작위 숫자 생성 함수를 사용할 수 있습니다.


위 코드를 실행하면 0부터 9까지의 임의의 정수가 출력됩니다 ❗ random.randint(a, b) 함수는 a와 b 사이의 정수를 무작위로 선택하여 반환합니다.


위 코드를 실행하면 my_list에서 임의로 하나의 요소가 선택되어 출력됩니다. random.choice(seq) 함수는 시퀀스(seq)에서 임의의 요소를 선택하여 반환합니다.

🍓 파일에 쓰는 데이터가 한글이 포함된 경우, 파일을 작성할 때 인코딩 방식을 지정해야 합니다. 예를 들어, 파일을 UTF-8 인코딩으로 작성하려면 다음과 같이 코드를 수정할 수 있습니다.

with open('output.txt', 'w', encoding='utf-8') as file:
    file.write("{},{},{}\n".format(name,weight,height))

위 코드에서 encoding='utf-8' 매개변수를 사용하여 파일을 UTF-8 인코딩으로 작성하도록 설정하였습니다. 따라서 한글 데이터가 포함되어 있어도 파일을 정상적으로 작성할 수 있습니다.


💛 join()

join()문자열 메서드 중 하나로, 문자열 리스트를 하나의 문자열로 결합하는 기능을 제공합니다.

.join() 메서드는 문자열을 구성하는 리스트에 적용되며, 각 문자열 사이에 구분자(delimiter)를 추가하여 하나의 문자열로 결합합니다!

fruits = ["apple", "banana", "cherry"]
result = ", ".join(fruits)
print(result)        # 結果 :  "apple, banana, cherry"
number=[1,2,3,4,5,6]
print("::".join(str(num) for num in number))


0개의 댓글