2014-12-22 5 views
0
def stringToLek(red): 
    lek = {} 
    deo = red.strip().split("|") 
    lek["ser_br"] = int(deo[0]) 
    lek["fab_naziv"] = deo[1] 
    lek["gen_naziv"] = deo[2] 
    lek["kol_leka"] = int(deo[3]) 
    lek["c_leka"] = float(deo[4]) 
    return lek 
def lekToString(lek): 
    return '|'.join([lek['ser_br'], lek['fab_naziv'], lek['gen_naziv'], lek['c_leka'], lek['kol_leka']]) 

................................ .................................................TypeError : 시퀀스 항목 0 : 예상 str 인스턴스, int를 찾았습니다.

TypeError: sequence item 0: expected str instance, int found 
+1

가능한 중복 (http://stackoverflow.com/questions/17251935/python-how-to-print-list-of-list) – vaultah

+1

'join' 방법 문자열의 목록에 대해 작업합니다. 당신은 정수를 사용하려고합니다. 먼저 str()을 사용하여 변환하십시오. – 101

+0

당신은 달성하고자하는 것을 설명하고 실패한 것을 설명하기 위해 질문을 구술 하시겠습니까? 현재 귀하의 질문에 응답하는 사람들은 답변을 통해 혜택을 얻고 자한다면 모든 것을 스스로 추측해야합니다. – Eusebius

답변

0
def lekToString(lek): 
return '|'.join([str(lek['ser_br']), str(lek['fab_naziv']), str(lek['gen_naziv']), str(lek['c_leka']), str(lek['kol_leka'])]) 
[목록의 목록을 인쇄하는 방법 파이썬]의
2

join()에 대한 모든 인수는 문자열이어야합니다. 첫 번째 문자열 인 lek['ser_br']은 문자열이 아니기 때문에 int이기 때문에 문제가됩니다. lek["kol_leka"]lek["c_leka"] 같은 문제가 있습니다.

관련 문제