Advertisement
Guest User

Untitled

a guest
Dec 13th, 2019
350
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 23.59 KB | None | 0 0
  1. # L1 (1)
  2.  
  3. # def sum_list(list):
  4. # sum = 0
  5. # for x in list:
  6. # sum = sum + x
  7. # return sum
  8. #
  9. # my_list = [1,2,3,4]
  10. # print(sum_list(my_list))
  11.  
  12. # L2 (2)
  13.  
  14. # def multiply_list(list):
  15. # multiplication = 1
  16. # for x in list:
  17. # multiplication *= x
  18. # return multiplication
  19. #
  20. # my_list = [1,2,3,4]
  21. # print(multiply_list(my_list))
  22.  
  23. # L3 (3)
  24.  
  25. # def largest_number(list):
  26. # list.sort()
  27. # return list[-1]
  28. #
  29. # my_list = [3,1,4,2]
  30. # print(largest_number(my_list))
  31.  
  32. # 4
  33. '''
  34. my_list = [3,1,4,2]
  35. my_list.sort()
  36. smallest_number = my_list[0]
  37. print(smallest_number)
  38. '''
  39.  
  40. # L4 (5)
  41.  
  42. # def count_specific_str(list):
  43. # counter = 0
  44. # for x in list:
  45. # if len(x) >= 2 and x[0] == x[-1]:
  46. # counter += 1
  47. # return counter
  48. #
  49. # sample_list = ['abc', 'xyz', 'aba', '1221']
  50. # print(count_specific_str(sample_list))
  51.  
  52.  
  53. # # L5 (6)
  54. #
  55. # lst = [(2, 5), (1, 2), (4, 4), (2, 3), (2, 1)]
  56. #
  57. # for x in lst:
  58. #
  59. #
  60. # print(lst)
  61.  
  62. # L6 (7) nie uzywac seta
  63.  
  64. #### new_list = [x for n,x in enumerate(my_list) if x not in my_list[:n]]
  65. #### print(new_list)
  66.  
  67. # def remove_duplicates(list):
  68. # new_list = []
  69. # for i,x in enumerate(list):
  70. # if x not in list[i+1:]:
  71. # new_list.append(x)
  72. # return new_list
  73. #
  74. # my_list = ['aaa', 'asd', 'aaa', 'qwe']
  75. # print(remove_duplicates(my_list))
  76.  
  77. # L7 (10)
  78.  
  79. # def find_words(list, n):
  80. # new_list = []
  81. # for x in list:
  82. # if len(x) > n:
  83. # new_list.append(x)
  84. # return new_list
  85. #
  86. # my_list = ['red', 'green', 'blue']
  87. # print(find_words(my_list, 3))
  88.  
  89.  
  90. # L8 (11)
  91.  
  92. # list_1 = ['a', 'b', 'c', 'd']
  93. # list_2 = ['e', 'a', 'f', 'g']
  94. #
  95. # def common_element(list1, list2):
  96. # for x in list1:
  97. # if x in list2:
  98. # return True
  99. # break
  100. #
  101. # print(common_element(list_1, list_2))
  102.  
  103. # L9 (12)
  104.  
  105. # my_list = ['Red', 'Green', 'White', 'Black', 'Pink', 'Yellow']
  106. #
  107. # def remove_elements(list):
  108. # list = [x for (i,x) in enumerate(list) if i not in (0,4,5)]
  109. # return list
  110. #
  111. # print(remove_elements(my_list))
  112.  
  113.  
  114. # L10 (14)
  115.  
  116. # my_list = [1,2,3,4,5,6]
  117. #
  118. # def remove_even_numbers(list):
  119. # for x in list:
  120. # if x % 2 == 0:
  121. # list.remove(x)
  122. # return list
  123. #
  124. # print(remove_even_numbers(my_list))
  125.  
  126. # L11 (16)
  127.  
  128. # def generate_square_numbers_to(n):
  129. # list = []
  130. # out_list = []
  131. # for x in range(1, n + 1):
  132. # list.append(x**2)
  133. # out_list.extend(list[:5])
  134. # out_list.extend(list[-5:])
  135. # return out_list
  136. #
  137. # print(generate_square_numbers_to(15))
  138.  
  139. # L12 (18) nie uzywac itertools
  140.  
  141. # lst = ['a', 'b', 'c']
  142.  
  143. # def perm(a, k=0):
  144. # if k == len(a):
  145. # print(a)
  146. # else:
  147. # for i in range(k, len(a)):
  148. # a[k], a[i] = a[i] ,a[k]
  149. # perm(a, k+1)
  150. # a[k], a[i] = a[i], a[k]
  151. #
  152. # perm(lst)
  153.  
  154.  
  155. # L13 (19)
  156.  
  157. # lst = ['a', 'b', 'c', 'e']
  158. # other_lst = ['d', 'b', 'c', 'w']
  159. #
  160. # def difference_between_lists(list1, list2):
  161. # result = []
  162. # for x in list1:
  163. # if x not in list2:
  164. # result.append(x)
  165. # return result
  166. #
  167. # print(difference_between_lists(lst, other_lst))
  168.  
  169. # 20
  170.  
  171. # nums = [5, 15, 35, 8 , 98]
  172. # for index, value in enumerate(nums):
  173. # print(index, value)
  174.  
  175. # 21
  176.  
  177. # lst = ['l', 'i', 's', 't']
  178. # s = ""
  179. # for x in lst:
  180. # s = s + x
  181. #
  182. # print(s)
  183. #
  184. # #other solution
  185. # ss = ''.join(lst)
  186. # print(ss)
  187.  
  188. # 22
  189.  
  190. # num = [10, 30, 4, -6]
  191. #
  192. # print(num.index(30))
  193.  
  194. # 23
  195.  
  196. # lst = [[2,4,3], [1,5,6], [9], [7,9,0]]
  197. # new_lst = []
  198. #
  199. # for x in lst:
  200. # for y in x:
  201. # new_lst.append(y)
  202. #
  203. # print(new_lst)
  204.  
  205. # 27 sort
  206.  
  207. # lst = [11, 23, 4, 6, 21]
  208. #
  209. # lst.sort()
  210. # print(lst[1])
  211.  
  212. # 29 for in
  213.  
  214. # lst = ['a', 'b', 'c', 'a']
  215. #
  216. # for i,x in enumerate(lst):
  217. # if x in lst[i+1:]:
  218. # lst.remove(x)
  219. # print(lst)
  220.  
  221. # 31
  222.  
  223. # lst = [1, 2, 3, 4, 5, 6, 7, 8]
  224. # counter = 0
  225. #
  226. # for x in lst:
  227. # if 3 <= x <= 6:
  228. # counter += 1
  229. #
  230. # print(counter)
  231.  
  232. # 37
  233.  
  234. # lst1 = ['a','b','c']
  235. # lst2 = ['e','a','g']
  236. #
  237. # for x in lst1:
  238. # if x in lst2:
  239. # print(x)
  240.  
  241. # 42 min max range
  242.  
  243. # lst = [4,6,9]
  244. # missing = []
  245. #
  246. # for x in range(min(lst), max(lst)):
  247. # if x not in lst:
  248. # missing.append(x)
  249. #
  250. # print(missing)
  251.  
  252. '''to be done'''
  253. # 44
  254.  
  255. #lst = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
  256.  
  257. # 46
  258.  
  259. # lst = [21, 11, 2, 55, 9, 10, 72, 18, 5]
  260. # new_lst = []
  261. #
  262. # for i,x in enumerate(lst, 1):
  263. # if i%2 == 1:
  264. # new_lst.append(x)
  265. #
  266. # print(new_lst)
  267.  
  268. # 51
  269.  
  270. # lst = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
  271. #
  272. # new_lst = [lst[i::3] for i in range(3)]
  273. #
  274. # print(new_lst)
  275.  
  276. # 56
  277.  
  278. # str1 = 'string'
  279. # lst = []
  280. #
  281. # for x in str1:
  282. # lst.append(x)
  283. #
  284. # print(lst)
  285.  
  286. # 63
  287.  
  288. # str1 = 'xxx'
  289. # lst = ['one', 'two', 'three', 'four']
  290. #
  291. # for i,x in enumerate(lst):
  292. # lst[i] = str1 + x
  293. #
  294. # print(lst)
  295.  
  296. '''to be done'''
  297. # 64
  298.  
  299. # lst1 = ['one', 'two', 'three']
  300. # lst2 = ['jeden', 'dwa', 'trzy']
  301. # str1 = ''
  302.  
  303. # 69
  304.  
  305. # lst = [[10, 20], [40], [30, 56, 25], [10, 20], [33], [40]]
  306. # new_lst = []
  307. #
  308. # for i,x in enumerate(lst, 1):
  309. # if x not in lst[i:]:
  310. # new_lst.append(x)
  311. #
  312. # print(new_lst)
  313.  
  314.  
  315. # z wykladu
  316. # l = ['a', 'aaa', 'aa']
  317. # r = [len(i) for i in l]
  318. # print(r)
  319.  
  320. # L29
  321.  
  322. # l1 = ['asd', 'ABc', 'qqq']
  323. # l2 = ['ASD', 'abc', 'qqq']
  324. #
  325. # def check_if_equal(l1, l2):
  326. # r1 = [x.lower() for x in l1]
  327. # r2 = [y.lower() for y in l2]
  328. # return r1 == r2
  329. #
  330. # print(check_if_equal(l1,l2))
  331.  
  332.  
  333. # L30
  334.  
  335. # a)
  336. # A = ['agh', 'mtm', 'python']
  337. # B = ['python', 'rrrr', 'ddddd']
  338. #
  339. # def change_if_occurs(A, B):
  340. # C = []
  341. # for x in (A):
  342. # if x in B:
  343. # C.append("...")
  344. # else:
  345. # C.append(x)
  346. # return C
  347. #
  348. # print(change_if_occurs(A, B))
  349.  
  350. # def change_if_occurs(A, B):
  351. # return [x if x not in B else '...' for x in A]
  352. #
  353. # print(change_if_occurs(A,B))
  354.  
  355.  
  356. # b)
  357. # A = ['agh', 'mtm', 'python']
  358. # B = ['python', 'rrrr', 'ddddd']
  359. #
  360. # def change_if_occurs(A, B):
  361. # return [x if x not in B else len(x)*'.' for x in A]
  362. #
  363. # print(change_if_occurs(A,B))
  364.  
  365. # c)
  366. # A = ['agh', 'mtm', '_python_']
  367. # B = ['python', 'rrrr', 'ddddd']
  368. #
  369. # def change_if_occurs(A, B):
  370. # C = []
  371. # for x in A:
  372. # if x.startswith('_'):
  373. # x = x[1:]
  374. # if x.endswith('_'):
  375. # x = x[:-1]
  376. # if x in B:
  377. # C.append("...")
  378. # else:
  379. # C.append(x)
  380. # return C
  381. #
  382. # print(change_if_occurs(A,B))
  383.  
  384. # d)
  385. #
  386. # A = ['agh', 'mtm', 'python']
  387. # B = ['python', 'rrrr', 'ddddd']
  388. #
  389. # def change_if_occurs(A, B):
  390. # return [x for x in A if x not in B]
  391. #
  392. # print(change_if_occurs(A,B))
  393.  
  394. # L31
  395.  
  396. # A = ['kot', 'pies', 'kon']
  397. # B = ['pies:dog', 'kot:cat']
  398. #
  399. # def change_strings(A, B):
  400. # C = [x.split(':') for x in B]
  401. # D = [val for sublist in C for val in sublist]
  402. # return [D[D.index(a)+1] if a in D else '?' for a in A]
  403. #
  404. # print(change_strings(A, B))
  405.  
  406. # L32
  407.  
  408. # a)
  409. # A = ['kilogram', 'mouse', 'tree']
  410. #
  411. # def add_category(A):
  412. # animal = ['dog', 'cat', 'mouse']
  413. # plant = ['tree', 'grass', 'flower']
  414. # unit = ['meter', 'kilogram', 'newton']
  415. # B = []
  416. # for x in A:
  417. # if x in animal:
  418. # x = x + ':animal'
  419. # B.append(x)
  420. # if x in plant:
  421. # x = x + ':plant'
  422. # B.append(x)
  423. # if x in unit:
  424. # x = x + ':unit'
  425. # B.append(x)
  426. # return B
  427. #
  428. # print(add_category(A))
  429.  
  430. # b) to be done
  431.  
  432. # L33
  433.  
  434. # A = ['pies','kot','kot','zaba','kon','kon','kon','panda']
  435. #
  436. # def compress_words(A):
  437. # B = [A.count(x) for x in A]
  438. # C = list(zip(A, B))
  439. # D = []
  440. # for i,x in enumerate(C):
  441. # if x not in C[i+1:]:
  442. # D.append(x)
  443. # return D
  444. #
  445. # print(compress_words(A))
  446.  
  447. # L34
  448.  
  449. # string = 'Liczba 7 dzielona przez 2 daje liczbę 3.5 a 1 przez 8 daje liczbę 0.128'
  450. #
  451. # def bold_numbers(string):
  452. # pre = '<b>'
  453. # past = '</b>'
  454. # new_string = ''
  455. # for x in string.split():
  456. # if not x.isalpha():
  457. # x = f'{pre}{x}{past}'
  458. # new_string = new_string + x + ' '
  459. # else:
  460. # new_string = new_string + x + ' '
  461. # return new_string.rstrip()
  462. #
  463. # print(bold_numbers(string))
  464.  
  465. # L35
  466.  
  467. # s_in = 'ala 1.23456 ma 12.3456 kota 123.456'
  468. #
  469. # s_in_l = s_in.split()
  470. #
  471. # s_nbrs_l = [s for s in s_in_l if s[0].isnumeric()]
  472. #
  473. # min_prec = min([len(s.split('.')[-1]) for s in s_nbrs_l])
  474. #
  475. # s_nbrs_l1 = filter(lambda s: s[0].isnumeric(), s_in_l)
  476.  
  477. # import re
  478. #
  479. # s = 'asas 10 103df 237 34.5 dsds'
  480. #
  481. # l = re.findall('\s+(\d+)\s+', s)
  482. #
  483. # print(l)
  484.  
  485. # L36
  486.  
  487. ####### DICTIONARIES #######
  488.  
  489. # D1
  490.  
  491. # d = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}
  492. #
  493. # import operator
  494. # def sort_by_values(d):
  495. # return sorted(d.items(), key=operator.itemgetter(1))
  496. #
  497. # print(sort_by_values(d))
  498.  
  499. # D2
  500.  
  501. # dic1={1:10, 2:20}
  502. # dic2={3:30, 4:40}
  503. #
  504. # def concatenate_dicts(d1, d2):
  505. # dic3 = {}
  506. # for d in d1, d2:
  507. # dic3.update(d)
  508. # return dic3
  509. #
  510. # print(concatenate_dicts(dic1,dic2))
  511.  
  512. # D3
  513.  
  514. # d1 = {'a': 1, 'b': 2}
  515. # key = 'a'
  516. #
  517. # def if_key_in_dict(dict, key):
  518. # if key in dict.keys():
  519. # return True
  520. # else:
  521. # return False
  522. #
  523. # print(if_key_in_dict(d1, key))
  524.  
  525.  
  526. # D4
  527.  
  528. # d1 = {'dog':'animal', 'flower':'plant', 'ford':'car'}
  529. #
  530. # def dict_to_list(dict):
  531. # lst1 = []
  532. # for k, v in dict.items():
  533. # x = k + ':' + v
  534. # lst1.append(x)
  535. # return lst1
  536. #
  537. # print(dict_to_list(d1))
  538.  
  539. # D5
  540. #
  541. # def generate_dict(N):
  542. # d = dict()
  543. # for x in range(1, N+1):
  544. # d[x] = x*x
  545. # return d
  546. #
  547. # print(generate_dict(5))
  548.  
  549. # D6
  550.  
  551. # def sum_values_in_dict(dict):
  552. # sum = 0
  553. # for x in dict.values():
  554. # sum += x
  555. # return sum
  556.  
  557. # def sum_values_in_dict(dict):
  558. # return sum(dict.values())
  559. #
  560. # d1 = {'data1':100,'data2':-54,'data3':247}
  561. #
  562. # print(sum_values_in_dict(d1))
  563.  
  564. # D7
  565.  
  566. # def multiply_values_in_dict(dict):
  567. # result = 1
  568. # for x in dict.values():
  569. # result *= x
  570. # return result
  571. #
  572. # d1 = {'data1':2,'data2':3,'data3':4}
  573. #
  574. # print(multiply_values_in_dict(d1))
  575.  
  576. # D8
  577.  
  578. # myDict = {'a':1,'b':2,'c':3,'d':4}
  579. #
  580. # def remove_key_from_dict(key, dict):
  581. # if key in dict:
  582. # del dict[key]
  583. # return dict
  584. #
  585. # print(remove_key_from_dict('a', myDict))
  586.  
  587. # D9
  588.  
  589. # keys = ['red', 'green', 'blue']
  590. # values = ['#FF0000','#008000', '#0000FF']
  591. #
  592. # def map_list_into_dict(keys, values):
  593. # return dict(zip(keys, values))
  594. #
  595. # print(map_list_into_dict(keys, values))
  596.  
  597. # D10
  598.  
  599. # color_dict = {'red':'#FF0000',
  600. # 'green':'#008000',
  601. # 'black':'#000000',
  602. # 'white':'#FFFFFF'}
  603. #
  604. # def sort_dict_by_key(dict):
  605. # result = []
  606. # for key in sorted(dict):
  607. # result.append("%s: %s" % (key, dict[key]))
  608. # return result
  609. #
  610. # print(sort_dict_by_key(color_dict))
  611.  
  612. # D11
  613.  
  614. # my_dict = {'x':500, 'y':5874, 'z': 560}
  615. #
  616. # def return_key_with_max_value(dict):
  617. # return max(dict.keys(), key=(lambda k: dict[k]))
  618. #
  619. # print(return_key_with_max_value(my_dict))
  620.  
  621. # D12
  622.  
  623. # student_data = {'id1':
  624. # {'name': ['Sara'],
  625. # 'class': ['V'],
  626. # 'subject_integration': ['english, math, science']
  627. # },
  628. # 'id2':
  629. # {'name': ['David'],
  630. # 'class': ['V'],
  631. # 'subject_integration': ['english, math, science']
  632. # },
  633. # 'id3':
  634. # {'name': ['Sara'],
  635. # 'class': ['V'],
  636. # 'subject_integration': ['english, math, science']
  637. # },
  638. # 'id4':
  639. # {'name': ['Surya'],
  640. # 'class': ['V'],
  641. # 'subject_integration': ['english, math, science']
  642. # },
  643. # }
  644. #
  645. # def remove_duplicates_from_dict(dict):
  646. # result = {}
  647. # for key,value in dict.items():
  648. # if value not in result.values():
  649. # result[key] = value
  650. # return result
  651. #
  652. # print(remove_duplicates_from_dict(student_data))
  653.  
  654. # D13
  655.  
  656. # d1 = {'a': 100, 'b': 200, 'c':300}
  657. # d2 = {'a': 300, 'b': 200, 'd':400}
  658. #
  659. # def join_two_dicts(dict1, dict2):
  660. # d = {}
  661. # for x in dict1.keys():
  662. # if x in dict2.keys():
  663. # d.update({x:dict1[x] + dict2[x]})
  664. # else:
  665. # d.update({x:dict1[x]})
  666. # for y in dict2.keys():
  667. # if y not in dict1.keys():
  668. # d.update({y:dict2[y]})
  669. # return d
  670. #
  671. # print(join_two_dicts(d1, d2))
  672.  
  673. # D14
  674.  
  675. # str1 = 'kakao'
  676. #
  677. # def count_letters(str1):
  678. # d = {}
  679. # lst1 = list(str1)
  680. # for x in lst1:
  681. # cnt = 0
  682. # for y in str1:
  683. # if x == y:
  684. # cnt += 1
  685. # d.update({x:cnt})
  686. # return d
  687. #
  688. # print(count_letters(str1))
  689.  
  690. # D15
  691.  
  692. # def length_of_words_in_list(lst1):
  693. # d = {}
  694. # for x in lst1:
  695. # d.update({x:len(x)})
  696. # return d
  697. #
  698. # lst1 = ['pies', 'kot', 'kaczka']
  699. #
  700. # print(length_of_words_in_list(lst1))
  701.  
  702. # D16
  703.  
  704. # lst1 = ['pies', 'kot', 'ryba']
  705. # dict1 = {'pies':'dog', 'kot':'cat', 'ryba':'fish'}
  706. #
  707. # def change_words(lst1, dict1):
  708. # lst2 = []
  709. # for x in lst1:
  710. # if x in dict1.keys():
  711. # lst2.append(dict1[x])
  712. # return lst2
  713. #
  714. # print(change_words(lst1,dict1))
  715.  
  716. # D17
  717.  
  718. # ld = [{'name':'Zawisza', 'age':35, 'heigth': 150, 'married': True},
  719. # {'name':'Malińska','age':25, 'heigth': 170, 'married': True},
  720. # {'name':'Adamski', 'age':15, 'heigth': 160, 'married': False}]
  721.  
  722. # a)
  723.  
  724. # def find_the_oldest(ld):
  725. # sorted_list = sorted(ld, key = lambda i: i['age'])
  726. # return sorted_list[-1]['name']
  727. #
  728. # print(find_the_oldest(ld))
  729.  
  730. # b)
  731.  
  732. # def higher_than_150(ld):
  733. # ld1 = []
  734. # for x in ld:
  735. # if x['heigth'] > 150:
  736. # ld1.append(x)
  737. # return ld1
  738. #
  739. # print(higher_than_150(ld))
  740.  
  741. # I1
  742.  
  743. # a)
  744.  
  745. # str1 = '01011001'
  746. #
  747. # def count_slopes(str1):
  748. # cnt = 0
  749. # for i,x in enumerate(str1[:-1]):
  750. # if not x == str1[i+1]:
  751. # cnt += 1
  752. # return cnt
  753. #
  754. # print(count_slopes(str1))
  755.  
  756. # b)
  757.  
  758. # str1 = '00111000100001'
  759. #
  760. # def show_slopes(str1):
  761. # str2 = ''
  762. # for i,x in enumerate(str1[:-1]):
  763. # if x == str1[i+1]:
  764. # str2 += '-'
  765. # else:
  766. # str2 += '*'
  767. # return str2
  768. #
  769. # print(show_slopes(str1))
  770.  
  771. # c)
  772.  
  773. # str1 = '001110100001'
  774. #
  775. # def show_rising_slopes(str1):
  776. # str2 = ''
  777. # for i,x in enumerate(str1):
  778. # if x == '1' and str1[i-1] == '0':
  779. # str2 += 'r'
  780. # else:
  781. # str2 += '-'
  782. # return str2
  783. #
  784. # print(show_rising_slopes(str1))
  785.  
  786. # d)
  787.  
  788. # str1 = '0011101000011010'
  789. #
  790. # def show_rising_slopes_and_max_period(str1):
  791. # str2 = ''
  792. # for i,x in enumerate(str1):
  793. # if x == '1' and str1[i-1] == '0':
  794. # str2 += 'r'
  795. # else:
  796. # str2 += '-'
  797. # lst1 = str2.split('r')
  798. # lst1.sort()
  799. # str2 = str2.replace(lst1[-1] + 'r', lst1[-1] + 'x')
  800. # return str2
  801. #
  802. # print(show_rising_slopes_and_max_period(str1))
  803.  
  804. # I2
  805.  
  806. # a = '001101010'
  807. # b = '101001100'
  808. #
  809. # def and_gate(a, b):
  810. # c = ''
  811. # for i,x in enumerate(a):
  812. # if x == '1' and b[i] == '1':
  813. # c += '1'
  814. # else:
  815. # c += '0'
  816. # return c
  817. #
  818. # print(and_gate(a,b))
  819.  
  820. # I3
  821.  
  822. # sda = '1100 0011'
  823. # scl = '1111 1111'
  824. #
  825. # def detect_start_and_stop(sda, scl):
  826. # out = ''
  827. # for i,x in enumerate(sda):
  828. # if x == '0' and scl[i] == '1' and sda[i-1] == '1' and scl[i-1] == '1':
  829. # out += 's'
  830. # elif x == '1' and scl[i] == '1' and sda[i-1] == '0' and scl[i-1] == '1':
  831. # out += 't'
  832. # elif x == ' ':
  833. # out += ' '
  834. # else:
  835. # out += '-'
  836. # return out
  837. #
  838. # print(detect_start_and_stop(sda, scl))
  839.  
  840. # I4
  841.  
  842. # a)
  843.  
  844. # zd1 = 'ala ma kota. niebo jest niebieskie. dzisiaj jest piatek.'
  845. #
  846. # def capitalize_first_words(zd):
  847. # l1 = zd.split('. ')
  848. # l2 = []
  849. # out = ''
  850. # for x in l1:
  851. # l2.append(x.capitalize())
  852. # out = '. '.join(l2)
  853. # return out
  854. #
  855. #
  856. # print(capitalize_first_words(zd1))
  857.  
  858. # b)
  859.  
  860. # zd = 'Jakies zdanie, tu jest ok. Tu juz ,jest zle,tu tez. Tu jest, za duzo.'
  861. #
  862. # def put_correct_number_of_whitespaces(zd):
  863. # l1 = zd.split(',')
  864. # l2 = []
  865. # for x in l1:
  866. # x = x.strip()
  867. # l2.append(x)
  868. # out = ', '.join(l2)
  869. # return out
  870. #
  871. # print(put_correct_number_of_whitespaces(zd))
  872.  
  873. # I5
  874.  
  875. # I6
  876.  
  877. # import os
  878. #
  879. # def remove_empty_lines(zd):
  880. # return os.linesep.join([s for s in zd.splitlines() if s])
  881. #
  882. #
  883. # zd = '''multi line string
  884. #
  885. #
  886. # jakis tak blabla'''
  887. #
  888. # print(remove_empty_lines(zd))
  889.  
  890. # I7
  891.  
  892. # a)
  893.  
  894. # zd = '''python learning
  895. # some text
  896. # line with err'''
  897. #
  898. # def add_when_error(zd):
  899. # l1 = zd.split('\n')
  900. # out = ''''''
  901. # for x in l1:
  902. # if 'err' in x:
  903. # x = '*' + x
  904. # out = out + x + '\n'
  905. # else:
  906. # out = out + x + '\n'
  907. # return out
  908. #
  909. # print(add_when_error(zd))
  910.  
  911. # b)
  912.  
  913. # zd = '''blablaabla
  914. # asd error qwe
  915. # smssmmss
  916. # okok error qqq'''
  917. #
  918. # def find_error(zd):
  919. # zd1 = zd.lower()
  920. # l1 = zd1.split('\n')
  921. # out = ''
  922. # for x in l1:
  923. # if ' error ' in x:
  924. # x = '*' + x
  925. # out = out + x + '\n'
  926. # else:
  927. # out = out + x + '\n'
  928. # return out
  929. #
  930. # print(find_error(zd))
  931.  
  932. # c)
  933.  
  934. # I8
  935.  
  936. # import re
  937. #
  938. # def trim_whitespaces(zd):
  939. # return re.sub(' +', ' ', zd)
  940. #
  941. # whitespaces = " abcd ef gh ijkl "
  942. # tabs = " abcde fgh ijkl"
  943. #
  944. # print(trim_whitespaces(tabs))
  945.  
  946. # D17 a
  947.  
  948. # l1 = [{'name':'Zawisza', 'age':35, 'heigth': 150, 'married': True},
  949. # {'name':'Malińska','age':25, 'heigth': 170, 'married': True},
  950. # {'name':'Adamski', 'age':15, 'heigth': 160, 'married': False}]
  951. #
  952. # def find_oldest(l1):
  953. # l2 = sorted(l1, key=lambda i: i['age'])
  954. # return l2[-1]['name']
  955. #
  956. # print(find_oldest(l1))
  957.  
  958. # D12
  959.  
  960. # dic = {'a': 1, 'b': 2, 'c': 3, 'd': 1, 'e': 2}
  961. #
  962. # def remove_duplicates(dic):
  963. # out = {}
  964. # for k,v in dic.items():
  965. # if v not in out.values():
  966. # out[k] = v
  967. # return out
  968. #
  969. # print(remove_duplicates(dic))
  970.  
  971. # I1d
  972.  
  973. # inp = '0011101000011010'
  974. #
  975. # def rising_edge(inp):
  976. # out = ''
  977. # for i,x in enumerate(inp):
  978. # if x == '1' and inp[i-1] == '0':
  979. # out += 'r'
  980. # else:
  981. # out += '-'
  982. # out2 = out.split('r')
  983. # out2.sort()
  984. # out = out.replace(out2[-1] + 'r', out2[-1] + 'x')
  985. # return out
  986. #
  987. # print(rising_edge(inp))
  988.  
  989.  
  990. # L21
  991.  
  992. # l1 = ['ab', 'tg', 'pl', 'af']
  993. # l2 = ['qw', 'pl', 'dd', 'ab']
  994. #
  995. # def find_common(l1, l2):
  996. # out = []
  997. # for x in l1:
  998. # if x in l2:
  999. # out.append(x)
  1000. # return out
  1001. #
  1002. # print(find_common(l1, l2))
  1003.  
  1004. # D17b
  1005.  
  1006. # dic = [{'name':'Zawisza', 'age':35, 'heigth': 150, 'married': True},
  1007. # {'name':'Malińska','age':25, 'heigth': 170, 'married': True},
  1008. # {'name':'Adamski', 'age':15, 'heigth': 160, 'married': False}]
  1009.  
  1010. # def find_taller_than_150(dic):
  1011. # out = []
  1012. # for x in dic:
  1013. # if x.get('heigth') > 150:
  1014. # out.append(x.get('name'))
  1015. # return out
  1016. #
  1017. # print(find_taller_than_150(dic))
  1018.  
  1019. # def find_the_oldest(dic):
  1020. # out = ''
  1021. # age_list = []
  1022. # for x in dic:
  1023. # age_list.append(x.get('age'))
  1024. # age_list.sort()
  1025. # for x in dic:
  1026. # if x.get('age') == age_list[-1]:
  1027. # out = x.get('name')
  1028. # return out
  1029. #
  1030. # print(find_the_oldest(dic))
  1031.  
  1032. # I2
  1033.  
  1034. # a = '001101010'
  1035. # b = '101001100'
  1036. #
  1037. # def and_gate(a, b):
  1038. # c = ''
  1039. # for i,x in enumerate(a):
  1040. # if x == '1' and b[i] == '1':
  1041. # c += '1'
  1042. # else:
  1043. # c += '0'
  1044. # return c
  1045. #
  1046. # print(and_gate(a,b))
  1047.  
  1048. # L31
  1049.  
  1050. # A = ('kot','pies','koń')
  1051. # B = ('pies:dog','kot:cat')
  1052. #
  1053. # def replace_word(A,B):
  1054. # C = []
  1055. # out = []
  1056. # for x in B:
  1057. # C.extend(x.split(':'))
  1058. # for x in A:
  1059. # if x in C:
  1060. # out.append(C[C.index(x)+1])
  1061. # else:
  1062. # out.append('?')
  1063. # return out
  1064. #
  1065. # print(replace_word(A,B))
  1066.  
  1067. # D10
  1068.  
  1069. # dic = {3:'trzeci', 2:'drugi', 1:'pierwszy', 4:'czwarty'}
  1070. #
  1071. # def sort_by_key(dic):
  1072. # l1 = []
  1073. # out = {}
  1074. # for x in dic.keys():
  1075. # l1.append(x)
  1076. # l1.sort()
  1077. # for x in l1:
  1078. # out.update({x:dic[x]})
  1079. # return out
  1080. #
  1081. # print(sort_by_key(dic))
  1082.  
  1083. # I1e
  1084. # --r---r----r
  1085. # inp = '001110100001'
  1086. #
  1087. # def period_counter(inp):
  1088. # out = ''
  1089. # for i,x in enumerate(inp):
  1090. # if x == '1' and inp[i-1] == '0':
  1091. # out += 'r'
  1092. # else:
  1093. # out += '-'
  1094. # l1 = []
  1095. # for i,x in enumerate(out):
  1096. # if x == 'r':
  1097. # l1.append(i)
  1098. # l2 = []
  1099. # for i,x in enumerate(l1,1):
  1100. # if i < len(l1):
  1101. # l2.append(l1[i]-l1[i-1])
  1102. # return sum(l2) / len(l2)
  1103. #
  1104. # print(period_counter(inp))
  1105.  
  1106. # L34
  1107.  
  1108. # inp = 'Liczba 7 dzielona przez 2 daje liczbę 3.5 a 1 przez 8 daje liczbę 0.128'
  1109. #
  1110. # def bold_number(inp):
  1111. # pre = '<b>'
  1112. # past = '</b>'
  1113. # out = ''
  1114. # for x in inp.split():
  1115. # if not x.isalpha():
  1116. # out += pre + x + past + ' '
  1117. # else:
  1118. # out += x + ' '
  1119. # out = out.rstrip()
  1120. # return out
  1121. #
  1122. # print(bold_number(inp))
  1123.  
  1124. # D14
  1125.  
  1126. # str1 = 'kakao'
  1127. #
  1128. # def count_letters(inp):
  1129. # dic = {}
  1130. # for x in inp:
  1131. # cnt = 0
  1132. # for y in inp:
  1133. # if x == y:
  1134. # cnt += 1
  1135. # dic.update({x:cnt})
  1136. # return dic
  1137. #
  1138. # print(count_letters(str1))
  1139.  
  1140. # I5
  1141.  
  1142. # str1 = '''jakis tam se string
  1143. # na wiele
  1144. # linijek
  1145. # XDD'''
  1146. #
  1147. # def text_to_right(inp):
  1148. # arr = inp.split('\n')
  1149. # lenghts = []
  1150. # for x in arr:
  1151. # lenghts.append(len(x))
  1152. # newarr = []
  1153. # for x in arr:
  1154. # x = ' '*(max(lenghts)-len(x)) + x
  1155. # newarr.append(x)
  1156. # out = ''
  1157. # for x in newarr:
  1158. # out += x + '\n'
  1159. # return out.rstrip()
  1160. #
  1161. # print(text_to_right(str1))
  1162.  
  1163. # L33
  1164.  
  1165. # inp = ('pies','kot','kot','zaba','kon','kon','kon','panda')
  1166. #
  1167. # def count_animals(inp):
  1168. # ar1 = []
  1169. # for x in inp:
  1170. # ar1.append(inp.count(x))
  1171. # ar2 = list(zip(inp, ar1))
  1172. # ar3 = []
  1173. # for i,x in enumerate(ar2):
  1174. # if x not in ar2[i+1:]:
  1175. # ar3.append(x)
  1176. # return ar3
  1177. #
  1178. #
  1179. # print(count_animals(inp))
  1180.  
  1181. # L20
  1182.  
  1183. # lst = [10,20,30,40,50,60,70,80,90]
  1184. #
  1185. # def count_numbers_in_range(lst, min, max):
  1186. # cnt = 0
  1187. # for x in lst:
  1188. # if min <= x <= max:
  1189. # cnt += 1
  1190. # return cnt
  1191. #
  1192. # print(count_numbers_in_range(lst, 30, 60))
  1193.  
  1194. # L26
  1195.  
  1196. # xd = 'XD'
  1197. # lst = ['jeden', 'dwa', 'trzy']
  1198. #
  1199. # def put_before_string(lst, str1):
  1200. # out = []
  1201. # for x in lst:
  1202. # x = str1 + x
  1203. # out.append(x)
  1204. # return out
  1205. #
  1206. # print(put_before_string(lst, xd))
  1207.  
  1208. # D13
  1209.  
  1210. # dic1 = {'one':2, 'nnn':1, 'two':3}
  1211. # dic2 = {'asd':1, 'two':2, 'one':3}
  1212. #
  1213. # def add_dics(dic1, dic2):
  1214. # out = {}
  1215. # for x in dic1.keys():
  1216. # if x in dic2.keys():
  1217. # out.update({x:dic1[x]+dic2[x]})
  1218. # else:
  1219. # out.update({x:dic1[x]})
  1220. # for y in dic2.keys():
  1221. # if y not in dic1.keys():
  1222. # out.update({y:dic2[y]})
  1223. # return out
  1224. #
  1225. # print(add_dics(dic1, dic2))
  1226.  
  1227.  
  1228. # I7c
  1229.  
  1230. # str1 = ''' jskadjis sadsad
  1231. # askdoaskdosakd
  1232. # sakokasd 3 asodkas
  1233. # asd 213 sad d'''
  1234. #
  1235. # def I7c(str1):
  1236. # l1 = str1.splitlines()
  1237. # for i,x in enumerate(l1):
  1238. # wrd = x.split(" ")
  1239. # for y in wrd:
  1240. # try:
  1241. # float(y)
  1242. # l1[i] = "*" + x
  1243. # except ValueError:
  1244. # pass
  1245. # return '\n'.join(l1)
  1246. #
  1247. # print(I7c(str1))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement