Skip to content

Instantly share code, notes, and snippets.

Created September 5, 2017 14:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save anonymous/8fea9c981ec8d98e1a165eebe61e0c4e to your computer and use it in GitHub Desktop.
Save anonymous/8fea9c981ec8d98e1a165eebe61e0c4e to your computer and use it in GitHub Desktop.
null created by anonymous - https://repl.it/KhuA/17
# import di classi esterne al mio file principale
from module import Book
from module import Dictionary
book = Book("Moby Dick", "Loomings. \
Call me Ishmael. Some years ago—never mind how\
long precisely...", 500)
book.read()
print("Implementation of special method __len__:")
for x in range(len(book)):
print(x + 1, end=" ")
print("pages!")
myFirstDictionary = Dictionary("Garzanti", "Apple = mela, mela = apple", 1, "English -> Italian and viceversa")
print("The Dictionary is a Book: ", issubclass(Dictionary, Book))
print("myFirstDictionary is a Dictionary: ", isinstance(myFirstDictionary, Dictionary))
print("myFirstDictionary is a Book: ", isinstance(myFirstDictionary, Book))
print("I'm printing on a file...")
#with construct
with open("myFile.txt", "a") as file:
print("I've printed on a filme many times!:D", file=file) # a = append: aggiunta non in sovrascrittura!
print("Printing my book:\n", book)
print("Calling private method from other function:")
book.callMyPrivateMethod()
print("Calling it directly:")
book.__privateMethod()
class Book:
def __init__(self, title, body, pages):
self.title = title
self.body = body
self.pages = pages
def read(self):
print(self.body)
def __privateMethod(self):
print("You can't call me from outside!")
def callMyPrivateMethod(self):
self.__privateMethod()
def __len__(self):
return self.pages
def __str__(self):
return "Title: {0}\nBody: {1}\nFor {2} pages...:O".format(self.title, self.body, self.pages)
class Dictionary(Book):
def __init__(self, title, body, pages, languages):
# calling super-constructor
super(Dictionary, self).__init__(title, body, pages)
self.languages = languages
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment