Advertisement
robertvari

tmp

May 11th, 2019
253
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.18 KB | None | 0 0
  1.  
  2.  
  3. class Person:
  4.     def __init__(self,
  5.                  first_name,
  6.                  last_name,
  7.                  address=None,
  8.                  age=None,
  9.                  salary=None,
  10.                  email=None):
  11.  
  12.         self.first_name = first_name
  13.         self.last_name = last_name
  14.         self.address = address
  15.         self.age = age
  16.         self.salary = salary
  17.         self.email = email
  18.  
  19.     @property
  20.     def address(self):
  21.         return self.__address
  22.  
  23.     @address.setter
  24.     def address(self, address):
  25.         if not address: return
  26.  
  27.         if type(address) == str:
  28.             self.__address = address
  29.         else:
  30.             raise TypeError("address must be string type!")
  31.  
  32.     @property
  33.     def age(self):
  34.         return self.__age
  35.  
  36.     @age.setter
  37.     def age(self, value):
  38.         if not value: return
  39.  
  40.         if type(value) == int:
  41.             self.__age = value
  42.         else:
  43.             raise TypeError("age must be int type!")
  44.  
  45.     @property
  46.     def salary(self):
  47.         return self.__salary
  48.  
  49.     @salary.setter
  50.     def salary(self, value):
  51.         if not value: return
  52.  
  53.         if type(value) == int:
  54.             self.__salary = value
  55.         else:
  56.             raise TypeError("salary must be int type!")
  57.  
  58.     @property
  59.     def email(self):
  60.         return self.__email
  61.  
  62.     @email.setter
  63.     def email(self, email):
  64.         if not email: return
  65.  
  66.         if type(email) == str:
  67.             self.__email = email
  68.         else:
  69.             raise TypeError("email must be string type!")
  70.  
  71.     def save(self):
  72.         import json, os
  73.  
  74.         data_folder = 'E:/tmp'
  75.  
  76.         destination_file = os.path.join(data_folder, f"{self.first_name}_{self.last_name}.json")
  77.  
  78.         with open(destination_file, "w") as f:
  79.             json.dump(self.__dict__, f)
  80.  
  81.     def __str__(self):
  82.         return f"{self.first_name} {self.last_name}"
  83.  
  84. from faker import Faker
  85.  
  86. fake = Faker("hu_HU")
  87.  
  88. persons = []
  89. for _ in range(10):
  90.     first_name, last_name, *args = fake.name().split()
  91.     p = Person(first_name, last_name)
  92.     p.email = fake.email()
  93.     p.address = fake.address()
  94.  
  95.     persons.append(p)
  96.  
  97. [i.save() for i in persons]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement