?? lvuyouguanli
字號:
# -*- coding: cp936 -*-
# This program will calculate how much eachone should pay in a AA activity.
# Two files are needed:
# * members: This file has a list of all members of the activity. One member per line
# * expenses: This file has a list of all expenses. Each line is {Payer name};{Expense Description};{Amount}
def getMemberCount():
members = open('members').readlines()
for member in members:
member = str.rstrip(member)
return len(member)
def getAverageExpense():
sum = 0
expenses = open('expenses').readlines()
for expense in expenses:
sum += int(expense.split(';')[2])
return sum / getMemberCount()
def calculateHowMuchEachMemberHasPaid():
dic = {}
expenses = open('expenses').readlines()
for s in expenses:
items = s.split(';')
if dic.has_key(items[0])==False:
dic[items[0]] = int(items[2])
else:
dic[items[0]] += int(items[2])
return dic
def calculateHowMuchEachMemberShouldPay(dic, average):
members = open('members').readlines()
for member in members:
member = str.rstrip(member)
if dic.has_key(member)==False:
dic[member] = average
else:
dic[member] = average - dic[member]
return dic
if __name__ == "__main__":
averageCost = getAverageExpense()
print "平均支出: " + str(averageCost) + "\n"
report = calculateHowMuchEachMemberShouldPay(calculateHowMuchEachMemberHasPaid(), averageCost)
print "支出報表"
for name in report.keys():
print name + " : " + str(report[name])
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -