Guest User

Untitled

a guest
May 29th, 2018
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.10 KB | None | 0 0
  1. import os
  2.  
  3. key_id = {'login': ['lok', 'admin'],
  4. 'password': ['123456', 'qwerty1'],
  5. 'role': ['user', 'admin'],}
  6. login_authorize = ""
  7. os.system('clear')
  8. print("Добро пожаловать!")
  9.  
  10. def reg():
  11. print("Регистрация:")
  12. print("Создать имя пользователя:")
  13. login = input()
  14. while 1:
  15. if not login:
  16. print('Имя пользователя не может быть пустым!')
  17. print("Пройдите регистрацию заново!")
  18. os.system('pause')
  19. return
  20. if (checkDuplicate(login, 'login') == 1):
  21. print("Пользователь существует!")
  22. login = input()
  23. elif (checkDuplicate(login, 'login') == 0):
  24. break
  25.  
  26. print("Создать пароль:")
  27. password = input()
  28.  
  29. key_id['login'].append(login)
  30. key_id['password'].append(password)
  31. while 1:
  32. if not password:
  33. print("Пароль не может быть пустым!")
  34. print('Пройдите регистрацию заново!')
  35. os.system('pause')
  36.  
  37. break
  38. if login_authorize == "":
  39. choosingRole()
  40. print('Вы успешно зарегистрировались!')
  41. main()
  42. else:
  43. choosingRole()
  44. menuAdmin()
  45. return
  46.  
  47. def choosingRole():
  48. print("Выберите вашу роль: 1-пользователь, 2-администратор")
  49. m = input()
  50. if (int(m) == 1):
  51. key_id['role'].append('user')
  52. elif (int(m) == 2):
  53. print("Введите код:")
  54. code = input()
  55. if (int(code) == 1234):
  56. key_id['role'].append('admin')
  57. else:
  58. print("Вы используете неверный код!")
  59. key_id['role'].append('user')
  60.  
  61.  
  62.  
  63.  
  64. def authorize():
  65. global login_authorize
  66. print('Вход в систему')
  67. print("Введите ваш логин:")
  68. login = input()
  69.  
  70. while 1:
  71. if (checkDuplicate(login, 'login') == 1):
  72. print("Ведите ваш пароль:")
  73. indexOfLogin = key_id['login'].index(login)
  74. break
  75. elif (checkDuplicate(login, 'login') == 0):
  76. print('Неверный логин!')
  77. os.system('pause')
  78. print("Введите ваш логин заново")
  79. login = input()
  80.  
  81. password = input()
  82. while 1:
  83. if (checkDuplicate(password, 'password') == 1) and (indexOfLogin == key_id['password'].index(password)):
  84. print("Авторизация прошла успешно!")
  85. login_authorize = login
  86. indexOfUser = key_id['login'].index(login)
  87. checkRole()
  88. break
  89. elif (checkDuplicate(password, 'password') == 0):
  90. print("Неккоректный пароль")
  91. os.system('pause')
  92. print('Введите пароль заново')
  93. password = input()
  94.  
  95.  
  96. def changePasswordUser():
  97. indexOfLogin = key_id['login'].index(login_authorize)
  98. old_password = key_id['password'][indexOfLogin]
  99. print("Введите старый пароль")
  100. password = input()
  101. while password != old_password:
  102. print("Неверный пароль!")
  103. os.system('pause')
  104. print("Попробуйте ввести старый пароль заново")
  105. password = input()
  106. if password == '0':
  107. checkRole()
  108. print("Введите новый проль")
  109. password = input()
  110. key_id['password'][indexOfLogin] = password
  111. checkRole()
  112.  
  113. def resetPassword():
  114. print("Введите логин пользователя для сброса пароля:")
  115. login = input()
  116. i = 0
  117. while 1:
  118. if (login == key_id['login'][i]):
  119. break
  120. else:
  121. print("Повторите попытку входа в систему")
  122. i = 0
  123. login = input()
  124. i = i + 1
  125. indexOfLogin = key_id['login'].index(login)
  126. key_id['password'][i] = 1234;
  127. menuAdmin()
  128.  
  129.  
  130. def changeLoginUser():
  131. global login_authorize
  132. print("Введите новый логин для своей учетной записи:")
  133. new_login = input()
  134. indexOfLogin = key_id['login'].index(login_authorize)
  135. key_id['login'][indexOfLogin] = new_login
  136. login_authorize = new_login
  137. checkRole()
  138.  
  139. def changeRole():
  140. print("Введите логин для изменения учетной записи:")
  141. login = input()
  142. if (checkDuplicate(login, 'login') == 0):
  143. print("Введите ваш логин заново")
  144. login = input()
  145. i = 0
  146. while 1:
  147. if (login == key_id['login'][i]) and i < len(key_id['login']):
  148. break
  149. elif (i > len(key_id['login'])):
  150. print("Повторите попытку входа в систему")
  151. i = 0
  152. login = input()
  153. i = i + 1
  154. print("Выберите роль для изменения: 1 - администратор, 2 - пользователь")
  155. value = int(input())
  156. if value == 1:
  157. key_id['role'][i] = 'admin'
  158. elif value == 2:
  159. key_id['role'][i] = 'user'
  160. else:
  161. key_id['role'][i] = 'user'
  162. menuAdmin()
  163.  
  164. def checkDuplicate(login, key):
  165. n = 0
  166. for lists_log in key_id[key]:
  167. if (lists_log == login):
  168. n = n + 1
  169. if n > 0:
  170. return 1
  171. else:
  172. return 0
  173.  
  174. def checkRole():
  175. index = key_id['login'].index(login_authorize)
  176. if (key_id['role'][index] == 'admin'):
  177. menuAdmin()
  178. else:
  179. menuUser()
  180.  
  181. def menuUser():
  182. global login_authorize
  183. print("\n\n Добро пожаловать, ", login_authorize, " - пользователь")
  184. print("1 - изменить логин \n2 - изменить пароль \n3 - покинуть учетную запись \n4 - закрыть программу")
  185. value = int(input())
  186. if (value == 1):
  187. print("изменить логин")
  188. changeLoginUser()
  189. elif (value == 2):
  190. print("изменить пароль")
  191. changePasswordUser()
  192. elif (value == 3):
  193. login_authorize = ""
  194. print("Вы покинули учетную запись")
  195. main()
  196. elif (value == 4):
  197. print("До свидания")
  198. exit(0)
  199. else:
  200. print("Некорректный ввод")
  201. menuUser()
  202.  
  203. def menuAdmin():
  204. global login_authorize
  205. print("\n\n Добро пожаловать, ", login_authorize, " - администратор")
  206. print("1 - создать пользователя,\n2 - Изменить свой логин,\n3 - изменить свой пароль,\n4 - сбросить пароль пользователя,\n5 - вывести список пользователей,\n6 - изменить роль пользователя,\n7 - выход\n8 - Выход из программы\n")
  207. i = int(input())
  208. if (i == 1):
  209. reg()
  210. elif (i == 2):
  211. changeLoginUser()
  212. elif (i == 3):
  213. changePasswordUser()
  214. elif (i == 4):
  215. print("Сбросить пароль пользователя (автоматически значение пароля равно- 1234")
  216. resetPassword()
  217. elif (i == 5):
  218. print(key_id)
  219. menuAdmin()
  220. elif (i == 6):
  221. print("Изменить роль пользователя")
  222. changeRole()
  223. elif (i == 7):
  224. login_authorize = ""
  225. main()
  226. elif (i == 8):
  227. exit(0)
  228. else:
  229. print("Некорректный ввод")
  230. menuAdmin()
  231. def main():
  232. while (1):
  233. print("\n\n1 - Вход;\n2 - Регистрация;\n3 - Вывод;\n4 - Выход.")
  234. i = input()
  235. if (int(i) == 1):
  236. authorize()
  237. elif (int(i) == 2):
  238. reg()
  239. elif (int(i) == 3):
  240. print(key_id)
  241. elif (int(i) == 4):
  242. exit(0)
  243. else:
  244. print("Некорректный ввод")
  245. main()
  246.  
  247. main()
Add Comment
Please, Sign In to add comment