Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Person:
- def __init__(self,
- first_name,
- last_name,
- address=None,
- age=None,
- salary=None,
- email=None):
- self.first_name = first_name
- self.last_name = last_name
- self.address = address
- self.age = age
- self.salary = salary
- self.email = email
- @property
- def address(self):
- return self.__address
- @address.setter
- def address(self, address):
- if not address: return
- if type(address) == str:
- self.__address = address
- else:
- raise TypeError("address must be string type!")
- @property
- def age(self):
- return self.__age
- @age.setter
- def age(self, value):
- if not value: return
- if type(value) == int:
- self.__age = value
- else:
- raise TypeError("age must be int type!")
- @property
- def salary(self):
- return self.__salary
- @salary.setter
- def salary(self, value):
- if not value: return
- if type(value) == int:
- self.__salary = value
- else:
- raise TypeError("salary must be int type!")
- @property
- def email(self):
- return self.__email
- @email.setter
- def email(self, email):
- if not email: return
- if type(email) == str:
- self.__email = email
- else:
- raise TypeError("email must be string type!")
- def save(self):
- import json, os
- data_folder = 'E:/tmp'
- destination_file = os.path.join(data_folder, f"{self.first_name}_{self.last_name}.json")
- with open(destination_file, "w") as f:
- json.dump(self.__dict__, f)
- def __str__(self):
- return f"{self.first_name} {self.last_name}"
- from faker import Faker
- fake = Faker("hu_HU")
- persons = []
- for _ in range(10):
- first_name, last_name, *args = fake.name().split()
- p = Person(first_name, last_name)
- p.email = fake.email()
- p.address = fake.address()
- persons.append(p)
- [i.save() for i in persons]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement