def add_song(self): name = input("Enter name: ") url = input("Enter URL: ") headers = ["Band/Artist Name"] bands_list = self._db.get_all_bands() artists_list = self._db.get_all_artists() self.print_list(headers, bands_list) self.print_attrs(["----------"], artists_list) band_name = input("Enter name of the band/artist: ") featured_artist = input("Enter featured artist (-1 if None): ") if featured_artist == "-1": featured_artist = None album_title_id_songs = self._db.get_all_albums() headers = ["ID", "Title", "Songs No."] self.print_list(headers, album_title_id_songs) album_id = input("Enter Album ID: ") day = int(input("Enter day of release: ")) month = int(input("Enter month of release: ")) year = int(input("Enter year of release: ")) release_date = Date(year, month, day) duration = input("Enter Song Duration: ") lyrics = input("Enter Song lyrics: ") print("Enter all Genres of the song: ") songs_genres = input().split(' ') # TODO: add list of genres to addSong self._db.add_song(songs_genres, url, album_id, band_name, featured_artist, name, release_date, lyrics, duration)
def add_artist(self): name = input("Enter name: ") day = int(input("Enter day of birth: ")) month = int(input("Enter month of birth: ")) year = int(input("Enter year of birth: ")) date = Date(year, month, day) artist = Artist(name, date) self._db.add_artist(artist)
def validate_year(value): if value > timezone.now().year or value < Date(1900, 1, 1).year: raise ValidationError( '%(value)s no es un año válido. NOTA: el año debe estar entre 1900 y %(actual_year)s', params={ 'value': value, 'actual_year': timezone.now().year }, )
from sqlite3 import Date class User: def __init__(self, birthday): self.__birthday = birthday def get_age(self): return 2018 - self.__birthday.year if __name__ == '__main__': user = User(Date(1990, 2, 1)) # 双下划线的私有属性,是不能直接访问的,只能通过类里面的公共的方法访问 # print(user.birthday) # print(user._User__birthday) #可以通过这个来访问私有属性 print(user.get_age())