Hi,
I wrote a program (see below) to analyse my phone bill, which is shared 
by three others and I don't  know if there is a way to make lines like 
this nicer:
if len(filter(re_name.search, line)) > 0 and len(filter(re_misc.search, 
line)) == 0

Is there for example a way to search the whole list and give back all 
the line numbers containing a string?

Regards,
Markus



phone={ "Markus":"1234561",\
        "Eckhard":"1234562",\
        "Robert":"1234563",\
        "Lei":"1234564"
                }



for name in phone.keys():       # loop through the list for all names
        euro=0 # set at each run to 0
        i=0 # Line number

        # compile REs
        re_name = re.compile(phone[name])
        re_month=re.compile("Monatliche")
        re_misc=re.compile("Sonstige")
        
        for line in rechnung:
                if len(filter(re_month.search, line)) == 0:     # skip the 
monthly 
costs
#               if "Monatliche" in line:
                        if len(filter(re_name.search, line)) > 0 and 
len(filter(re_misc.search, line)) == 0:
#                       if phone[name] in line:
                                euro += float(rechnung[i][10].replace( ',' , 
'.'))
                        if len(filter(re_misc.search, line)) > 0:       # misc 
services
                                if i not in misc_list: # add misc fees only once
                                        misc_list.append(i)
                                        misc += float(rechnung[i][10].replace( 
',' , '.'))
                elif len(filter(re_month.search, line)) > 0:
                        if i not in monthly_list: # add monthly occuring fees 
only once
                                monthly_list.append(i)
                                monthly += float(rechnung[i][10].replace( ',' , 
'.')) # replace 
commata with dots then add to the sum
                i=i+1           
        per_user = ( euro + ( monthly + misc )/ divider )*1.16
        total += per_user
        print name,": ", per_user



--
If everything seems to be going well,
you  obviously don't know what the hell is going on

_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor

Reply via email to