0
У меня есть Dictкак пропустить значение при печати с Словаря, если значение является пустым
x4={'c;1': 'c4;;c6', 'b;1': 'a2;b2;c2;d2', 'b;0': 'A1;B1;C1;D1', 'a;1': 'a1;b1;c1;d1', 'a;0': 'A;B;C;D', 'c;0': 'c1;c2;c3'}
Я использую этот код:
for k,v in x4.iteritems():
a = k.split(";")
b = v.split(";")
if a[1] is not '0':
val = x4[a[0]+';0']
values = val.split(";")
for i in range(len(values)):
if values[i]=='' is True:
b[i]=''
else:
print '<%s>%s<%s>' % (values[i],b[i],values[i])
выход его печать является
<c1>c4<c1>
<c2><c2>
<c3>c6<c3>
<A1>a2<A1>
<B1>b2<B1>
<C1>c2<C1>
<D1>d2<D1>
<A>a1<A>
<B>b1<B>
<C>c1<C>
<D>d1<D>
Но я хочу, чтобы это было
<c1>c4<c1>
<c3>c6<c3>
<A1>a2<A1>
<B1>b2<B1>
<C1>c2<C1>
<D1>d2<D1>
<A>a1<A>
<B>b1<B>
<C>c1<C>
<D>d1<D>
«c2» не следует печатать. Я использую этот код для печати сгруппированных данных. Просьба помочь мне
Там есть ошибка отступы, если ваш код - что-то должно быть отступом после 'если [1] = '0': ', но не ясно! сколько. Btw, 'если значения [i] == '' is True' могут быть сокращены до' if values [i] == '' 'или даже' if not values [i] '. – aquavitae
условие 'if values [i] == ''' проверяет, что требуемое условие истинно или нет, не нужно писать 'is True' с ним – avasal