だから私は自分のプロジェクトの一部に行き詰まっています。このプロジェクトでは、ライブラリ ファイルをディクショナリに読み取って、次のようなものを作成する必要があります。
inventory = {author: "book title, quantity, price"}
私はすでにやっています。次に、関数を作成する必要があります
- 表示ライブラリ、ソート済み。
- 著者に本を追加します。
- 本の数量を変更します。
- 図書館の総お金を計算します。
- 終了する。
私はパート 3 で立ち往生しています。ここに私がこれまでに持っているものがありますが、タイトルの各単語が大文字になっているため、書籍のタイトルが在庫にあるかどうかを確認する方法がわかりません。
def changeQty(inventory):
author = inventory.keys()
book = inventory.values()
lastName = raw_input("Enter the author's last name: ").capitalize()
firstName = raw_input("Enter the author's first name: ").capitalize()
check = lastName + ", " + firstName
while check not in author:
print "There is no author by that name in the library."
lastName = raw_input("Enter the author's last name: ").capitalize()
firstName = raw_input("Enter the author's first name: ").capitalize()
check = lastName + ", " + firstName
#after here i am stuck trying to make the title of 1 OR MORE words all
#capitalized, to check to see if the title is in reference.getTitle()
#example: title of dickens, charles would be Hart Times
title = raw_input("Enter the title: ")
for info in book:
for reference in info:
while title not in reference.getTitle():
print "This book does not exist in the library."
title = raw_input("Enter the title: ")
def main():
inventory = {}
test = readDatabase(inventory)
done = False
while not done:
menuOpt = raw_input("Please choose a menu option: ")
if menuOpt == '3':
newQty = changeQty(inventory)
elif menuOpt == '5':
print "Thank you for choosing this program to view your inventory"
print "Now exiting"
done = True
else:
print str(menuOpt) + " is outside this program's options."
print "Please choose again."
main()
class Book:
#constructor
def __init__(self, title, qty, price):
self.title = str(title)
self.qty = int(qty)
self.price = float(price)
#Accessors:
def getTitle(self):
return self.title
def getQte(self):
return self.qty
def getPrice(self):
return self.price
def getTotal(self):
return self.price * self.qty
#Mutators:
def setQty(self, newQty):
self.qty = newQty
def setPrice(self, newPrice):
self.price = newPrice
#Display method
def displayInfo(self):
print "\tTitle: " + self.title
print "\tQty: " + str(self.qty)
print "\tPrice: %.2f", %self.price
いくつかの完全な関数を省略しましたが、議論のために、book はオブジェクトのリストであると仮定しdef changeQty(inventory)
ます: タイトル、数量、価格。