파이썬을 이용해서 문자열,숫자 구분하고 중복 제거하기

테스트는 파이참으로했습니다~

food = "chicken,1,pizza,2,hamburger,1,chicken,2,pizza,1,hamburger,3"

##문자열 -> 리스트
temp = food.split(",")

##이중리스트에 담기
data = []
result = []

for i in range(len(temp)):
    if i % 2 == 1:
        # print(i, [temp[i-1], int(temp[i])])
        data.append([temp[i-1], int(temp[i])])

print(data)
print("="*100)
#중복제거하기 (고려사항 : 2중for문, flag, dupl 변수)
for i in range(len(data)): #6번돈다
    #flag가 Falso일땐 중복이 아니므로 최종 배열에 append
    is_dupl = False
    no_dupl = None
    for j in range(len(result)): #data리스트에 있는 상품명이 중복되는지 data2최종리스트와 비교하며 확인한다
        if result[j][0] == data[i][0]: #중복 check, 중복되는 index 번호 기록
            is_dupl = True
            no_dupl = j
    if is_dupl:
        sum = data[i][1] + result[no_dupl][1]
        result[no_dupl][1] = sum
    else:
        result.append(data[i])

print(result)

결과

중복값은 제거되고 숫자는 합해진다.

 

————————————————–

사이트 리뉴얼중입니다~

서버(Linux, ESXi), NAS(헤놀로지, ESXi 및 IT관련 정보, 기타 등등을 공유하는 커뮤니티 SVRFORUM을 새로 만들었습니다.
많은 가입(?) 부탁드립니다~
https://svrforum.com

이전글들은 모두 상단 메뉴의 Blog 글 모음에있습니다!

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

홈서버 IT 커뮤니티 SVRFORUM
Link