python3写Csv文件

import csv

def get_csv_file(read_file,write_file):
    headline = ['LegalName','GivenName','BirthDate','Gender','Scoring code'
                ,'Test battery for Direct Testing','Email','Education level'
                ,'Personal ID','Test language']
    write_csv_file(headline,write_file,";")    # 将头文件写入
    with open(read_file,'r',newline="") as csvfile:
        spamreader = csv.reader(csvfile)
        for row in spamreader:
            content=[]
            if spamreader.line_num == 1:
                continue
            legal_name = get_LegalName(row[1])
            given_name = get_GivenName(row[1])
            birth_date = get_BirthDate(row[6])
            gender = get_gender(row[2])
            scoring_code = row[5]
            test_battery = "COMPRO/S1"
            email=""
            education_level = 1
            personal_id = row[5]
            print(type(personal_id))
            test_language = 'Chinese'
            content.append(legal_name)
            content.append(given_name)
            content.append(birth_date)
            content.append(gender)
            content.append(scoring_code)
            content.append(test_battery)
            content.append(email)
            content.append(education_level)
            content.append(personal_id)
            content.append(test_language)
            print(content)
            write_csv_file(content,write_file,';')
            pass

def get_LegalName(content):
    legal_name = content[1:]
    return legal_name

def get_gender(content):
    if content == '男':
        gender = "male"
        pass
    else:
        gender = 'female'
        pass
    return gender

def get_GivenName(content):
    given_name = content[:1]
    return given_name

def get_BirthDate(content):
    arr = content.split(".")
    if int(arr[1])<10:
        arr[1]="0"+arr[1]
        pass
    if int(arr[2])<10:
        arr[2]="0"+arr[2]
        pass
    birth_date = "".join(arr)
    return(birth_date)

"""
将content追加到csv文件
"""
def write_csv_file(content,file,deli=','):
    #print(content)
    with open(file,'a',newline ="") as f:
        writer = csv.writer(f,delimiter=deli)
        writer.writerow(content)
    f.close()
    pass

def clear_csv_file(file):
    with open(file,"w") as f:
        f.truncate()
    f.close()
    pass

clear_csv_file("./data/first_id.csv")
clear_csv_file("./data/second_id.csv")
clear_csv_file("./data/third_id.csv")
get_csv_file("./data/first.csv",'./data/first_id.csv')





猜你喜欢

转载自blog.csdn.net/hang916/article/details/80243576
今日推荐