Advertisement
Guest User

Untitled

a guest
Nov 20th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.20 KB | None | 0 0
  1. def create():
  2. global t
  3. t = []
  4.  
  5.  
  6. def add(row):
  7. for i in row:
  8. if len(i) > 15:
  9. return
  10. if len(row) == 6:
  11. t.append(row)
  12.  
  13.  
  14. def delete(num):
  15. global t
  16. t = t[:num] + t[num + 1:]
  17.  
  18.  
  19. def insert(i, j, s):
  20. t[i][j] = s
  21.  
  22.  
  23. def table_sort(num):
  24. t.sort(key=lambda i: i[num])
  25.  
  26.  
  27. def show():
  28. print("-" * 102)
  29. print("|%15s" % lab[0],
  30. "|%15s" % lab[1],
  31. "|%15s" % lab[2],
  32. "|%15s" % lab[3],
  33. "|%15s" % lab[4],
  34. "|%15s|" % lab[5])
  35. print("-" * 102)
  36. for i in t:
  37. print("|%15s" % i[0],
  38. "|%15s" % i[1],
  39. "|%15s" % i[2],
  40. "|%15s" % i[3],
  41. "|%15s" % i[4],
  42. "|%15s|" % i[5])
  43. print("-" * 102)
  44.  
  45.  
  46. def main():
  47. print("Работа с таблицей")
  48. global t
  49. f = open("table.txt", "r")
  50. for i in f:
  51. add(i.split(";")[:-1])
  52. f.close()
  53. while True:
  54. print("Выберите действие:")
  55. print("1. Создать таблицу")
  56. print("2. Добавить строку")
  57. print("3. Удалить строку")
  58. print("4. Заменить данные")
  59. print("5. Сортировать")
  60. print("6. Поиск")
  61. print("7. Показать таблицу")
  62. print("9. Сохранение")
  63. print("0. Выход")
  64. try:
  65. n = int(input())
  66. if n == 0:
  67. break
  68. if n == 1:
  69. create()
  70. show()
  71. if n == 2:
  72. r = []
  73. for i in range(6):
  74. print('Введите поле "%s"' % lab[i])
  75. r.append(input())
  76. add(r)
  77. show()
  78. if n == 3:
  79. num = int(input("Введите номер строки, которую нужно удалить\n"))
  80. delete(num)
  81. show()
  82. if n == 4:
  83. i = int(input("Введите строку, в которой нужно произвести замену\n"))
  84. j = int(input("Введите поле, в котором нужно произвести замену\n"))
  85. s = input("Введите новые данные\n")
  86. insert(i, j, s)
  87. show()
  88. if n == 5:
  89. num = int(input("Введите номер поля, по которому нужно сортировать\n"))
  90. table_sort(num)
  91. show()
  92. if n == 6:
  93. show()
  94. num = int(input("Введите поле, в котором будет произведён поиск\n"))
  95. row = []
  96. for i in t:
  97. row.append(i[num])
  98. while True:
  99. print("Выберите тип поиска:")
  100. print("1. Самый большой")
  101. print("2. Самый маленький")
  102. print("3. Количество вхождений")
  103. print("0. Завершить работу")
  104. nn = int(input())
  105. if nn == 1:
  106. print(max(row))
  107. continue
  108. if nn == 2:
  109. print(min(row))
  110. continue
  111. if nn == 3:
  112. v = input("Введите искомое значение\n")
  113. print(row.count(v))
  114. if nn == 0:
  115. break
  116. if n == 7:
  117. show()
  118. if n == 9:
  119. f = open("table.txt", "w")
  120. for i in t:
  121. for j in i:
  122. f.write("%s;" % j)
  123. f.write("\n")
  124. f.close()
  125. except Exception as ex:
  126. print(ex)
  127.  
  128. t = []
  129. lab = ["Имя", "Фамилия", "Группа", "Специальность", "Год рождения", "Телефон"]
  130. if __name__ == '__main__':
  131. main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement