From a13a94ca512219ace99608d5f66ed230ff678def Mon Sep 17 00:00:00 2001 From: Don Diamond Date: Mon, 18 Jan 2021 23:42:42 +0300 Subject: [PATCH 01/10] lesson_6 initialise --- 1q.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 1q.txt diff --git a/1q.txt b/1q.txt new file mode 100644 index 0000000..e69de29 From 31057211c9a485a59b5eadd53f3da80c26bbc910 Mon Sep 17 00:00:00 2001 From: Don Diamond Date: Wed, 20 Jan 2021 17:42:25 +0300 Subject: [PATCH 02/10] hw_upd task_1 --- 1q.txt | 0 __pycache__/lesson_6_task_1.cpython-36.pyc | Bin 0 -> 2111 bytes lesson_6_task_1.py | 19 +++++++++++++++++++ lesson_6_task_2.py | 6 ++++++ tasklist | 8 ++++++++ tmp.py | 6 ++++++ 6 files changed, 39 insertions(+) delete mode 100644 1q.txt create mode 100644 __pycache__/lesson_6_task_1.cpython-36.pyc create mode 100644 lesson_6_task_1.py create mode 100644 lesson_6_task_2.py create mode 100644 tasklist create mode 100644 tmp.py diff --git a/1q.txt b/1q.txt deleted file mode 100644 index e69de29..0000000 diff --git a/__pycache__/lesson_6_task_1.cpython-36.pyc b/__pycache__/lesson_6_task_1.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0dedb8e9387608623fa167c00d2f9e8923f45339 GIT binary patch literal 2111 zcmaJ?&u<$=6rTNMJ0?X4T2LhpbBs|HsYQTPA;d4i1w}|8kgTA=+TA1@Hnuyv5hQXX zCmSdzr9ptivEsx|lKVr4g z`kyXiSLeCZ@M9li%X%NF8Ikop1AxWn*b6@;``{S5iKgZ>s|}$amB@-^J6d zaW&-FdOz=~0k#jYZ>S;ijH?r@e^+C2=&PYR;Tpb+>D@fbcevk*TN0q(7*GQ?GWe>` z<$ALjHJAAunDr1ML-eB>$o_x`k5F{z9tDQq7*G#$=&2*FsSV9rb&~I?KLGF}$EKbd zA-+ z>K?WqBMZ>M>X23hIH7k3-Xz%=Z-D{1$@>-pj!_d`Aj9SWE+jCJwFToo(aQHB+PRpu zM?O7>aST7C%wMC|$SKdTtq&>(y0#RaaOb9p*7#rDpZT?OJMz6NTo(giAZW@>^_oh^ z>;pat0~Nj{(WsUq(4|67ltf+b{D;O=AW-R}skFZqRu>T6ccv56L8n2WEdLHT5XvM< z%&^)AQBo8%kH`}>%BcRjxlTx1HA1%lp$l>PFby6T@&5})ooOmZM+E&zflZ^`)tTZ% z&^bX*XnPORp>Bwewj(;8L6VxKAtQ!Erfoe%?Y3Q(Gep4Xo~ZCOwNW8A6}3H{B%kjwDn0xm7!lo zMMmi1Spw9kxB`qKlr$=@!|a$kVaIK%nmJD}UJ4J(Ac{F370 zzr98tZW6{zzcE?G?!RAIxxV<}M!M2!F1CHqmaWy$Pm{^3w;M_1CyQ~IB(0`+RiusN z3vqS6y-`$zh?-F<#0>ExqRiU7G)-gv%){4KICyyQO)x2af(d;}I@Xf2WqXY}Y(VnH8lZT5dMtx<@uy z*kN3ElF--Mnc*pND^ETsvsffgV_;U*dfuvFq-XQuIb|l!3pGcQ9+HHS`0(PZNy0W8 zYoQQDRfx4#upZNVR)`zxjo4T;b4j7(3p7w2rv@SxR-B Date: Wed, 20 Jan 2021 17:45:45 +0300 Subject: [PATCH 03/10] upd task 1 --- __pycache__/lesson_6_task_1.cpython-36.pyc | Bin 2111 -> 2100 bytes lesson_6_task_1.py | 5 +++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/__pycache__/lesson_6_task_1.cpython-36.pyc b/__pycache__/lesson_6_task_1.cpython-36.pyc index 0dedb8e9387608623fa167c00d2f9e8923f45339..92f6ecd1a10f8076b2b8f021113c7b334229e9fe 100644 GIT binary patch delta 161 zcmdllutk8=n3tF9sUt_imW`azY~d^n3=AOb48+AjKq7@Pg{g)yjk%Vo!l{Izgt3Mp zi>ZdGnW>r4g&|h2mbrwvhPj!Mk)eh;g;|oJh9RB>D8i7%0un1>&0+(Jvq&;b-p>{! z$x_4#H1HN%ab|j6VonrmNoH_P{LTl zki}HP)Xdb(=)w?dRLfk#T*KVV$jDH`oWd;0P{R<<0%WmBGSspFWf-zpKyoFlS!^{d zlXtTPF|tnPW0x?AVlGZiF5&_j4< Date: Wed, 20 Jan 2021 17:50:06 +0300 Subject: [PATCH 04/10] upd upd --- __pycache__/lesson_6_task_1.cpython-36.pyc | Bin 2100 -> 2100 bytes lesson_6_task_1.py | 2 -- lesson_6_task_2.py | 4 ++-- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/__pycache__/lesson_6_task_1.cpython-36.pyc b/__pycache__/lesson_6_task_1.cpython-36.pyc index 92f6ecd1a10f8076b2b8f021113c7b334229e9fe..af7e5abc271f8585cac925899ec679bc2864f594 100644 GIT binary patch delta 26 hcmdlYutk8=n3tDpj}u2i%|=dlc4kH{#>v6#4*^=v2Cx7C delta 26 icmdlYutk8=n3tF9sUt_imW`b5?95DDOp}Az9|8biTL%&V diff --git a/lesson_6_task_1.py b/lesson_6_task_1.py index 7650ec0..7507377 100644 --- a/lesson_6_task_1.py +++ b/lesson_6_task_1.py @@ -14,7 +14,5 @@ def running(self, signal): for el in i_cycle(zip(self.__colors, timer)): print(el) self.__color = el[0] -# sec = el[1] print(self.__color) -# time.sleep(sec) time.sleep(el[1]) diff --git a/lesson_6_task_2.py b/lesson_6_task_2.py index c1dae68..b01d1c1 100644 --- a/lesson_6_task_2.py +++ b/lesson_6_task_2.py @@ -2,5 +2,5 @@ Например: 20м * 5000м * 25кг * 5см = 12500 т''' class Road: - __length = ('длина') - __width = ('ширина') \ No newline at end of file + __length = 0 + __width = 0 \ No newline at end of file From caca6f89b48cc0b6b9b2c93f2dd6731bf6752570 Mon Sep 17 00:00:00 2001 From: Don Diamond Date: Fri, 22 Jan 2021 03:06:41 +0300 Subject: [PATCH 05/10] hw upd --- __pycache__/lesson_6_task_2.cpython-36.pyc | Bin 0 -> 1597 bytes lesson_6_task_2.py | 25 ++++++++++++++++++--- lesson_6_task_3.py | 18 +++++++++++++++ tmp.py | 3 ++- tmp_task_2.py | 4 ++++ tmp_task_3.py | 4 ++++ 6 files changed, 50 insertions(+), 4 deletions(-) create mode 100644 __pycache__/lesson_6_task_2.cpython-36.pyc create mode 100644 lesson_6_task_3.py create mode 100644 tmp_task_2.py create mode 100644 tmp_task_3.py diff --git a/__pycache__/lesson_6_task_2.cpython-36.pyc b/__pycache__/lesson_6_task_2.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..dc8719882580e3b74b3d844bfa46196747b7230c GIT binary patch literal 1597 zcmZ`(&rcIU6rSB~OR3_45REZ0b99Mmum%rA4bg))V)WLKjLps}#nR$#iIMaGv_=US zz3IVUS5H=;QlXT8VdlD5FZwSS4}Nd9<%iL2=I!g7_rCYN_h$C;&`{>{@41Tl4!_G?%^d{6jy{4aX!}S22*wcO& z*}swpSNp2fqtxtIhLV6nOxs*9!+E<0*(Spa6t#_H9fa=cm+)#HX@zQ{U$2f=L?Cg+ zy~b^W)hf8I8qS~rur`(Q{$Ks+fFXLQwm9ViIg|ZPfS%-o~cakDUsz zpxBPCBTaq6q>G2eNBPm&;cveHs^zZ&{!f#tIbgLz^E3^L=Wuue+kZoLRp%l%johW? z8;oysNH5WRI>hc-JaCj5n~r+NXXSVgJ|HRG2RcFVVI~&p3$;ntd&J;@1DVaJci1wA z$`D?f;JGoAc6@9sR&wJwTALs;ZU|lDmvYzxXAhV3;BlZ$Vuhm+KEq{Yd0Sffgv|Jk z??~sZEt4|UNamArK&BfkpOS;P&L<*=uIW!iv7cv2;G@7?J4(gZElQdT=8=^idfQkx zvBL8ZHLJ!1tJ#oNEm3nu@X0vGs2VSWMCmW$_Pp?M0IZ7 zO-4@Wm+l9YBS=Byow-67=2J6%5jX!63r@iJYkX#6`u3CROr<T&xN)43LoEnU%tCafldX`@0^|qKDoGl~PQN z&C;?)NZKP*oi*hqfQAt`%fRC#tbH2`zHGLdiP=EhJ24Ee@KjWSw&D04-tx z&CnenqUFMzF9ez+<|=ZbMEXe~9xW6~@s7zEC5q*0Fhr53NE~J~8l^QoCVr;gwB@9S dlg5Ue7>JM+PY7f9S9FxV8mGTb-7>_T#2;?u*f; Date: Fri, 22 Jan 2021 14:34:22 +0300 Subject: [PATCH 06/10] hw UPD --- __pycache__/lesson_6_task_3.cpython-36.pyc | Bin 0 -> 1942 bytes __pycache__/lesson_6_task_4.cpython-36.pyc | Bin 0 -> 1578 bytes lesson_6_task_3.py | 24 ++++++++- lesson_6_task_4.py | 60 +++++++++++++++++++++ tmp_task_3.py | 7 +++ tmp_task_4.py | 10 ++++ 6 files changed, 99 insertions(+), 2 deletions(-) create mode 100644 __pycache__/lesson_6_task_3.cpython-36.pyc create mode 100644 __pycache__/lesson_6_task_4.cpython-36.pyc create mode 100644 lesson_6_task_4.py create mode 100644 tmp_task_4.py diff --git a/__pycache__/lesson_6_task_3.cpython-36.pyc b/__pycache__/lesson_6_task_3.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a485afb2423387f63b8f23f2fc28934e72540f31 GIT binary patch literal 1942 zcmaJ?-)kdP6uxt3@?&GWyZ+e4g2=VV(t*&Iq7Owx^uf2V;DZnf*O-~^rcE>P-U-Xr z2;F9-NLLmF-vsqV@h#P68~e+@K)CZdul^VNqrjGpTe9XVwgNi9*N4Qk=hQGSV{H}a%3)( zeRF}gPyMQ>*thp^ca#i(bGR-#jh(P6bWdfAZlqgrE9!_9bBuIn<{4hT1Tc~kfNXV| z(N35>PQFISu@90zQVgO;c#D#O5%HX65>vF1xd8d(FstGOVc(cBPWa6QYB?8XET|By zsU+mZ`l-O;+F~QXQF+2c5jbBy-j^zi9d*SlBpbMPV^?B6kY5455^3^ID`ZK^!z#*6AN{74u*U7A$ zT*T3gd?+&0kFdX+eJ~PJM9cp_W`YXXr;ecL%F4YkmYcnHTavOq%Eps3$bMjZjpB0` z32go_m*@?(fb_GCCH;~?F6gNlW{7bVH`@6W02D)#O@UQMWbl>*gq$|oj8RS#(?2~h z+}WOZ9gC3F9qbDpICVGRf%}-%y}-jRD5S-#8@so}riyk%(0I@hajV@HK~HasW-$k( ztBdm^oO&6i@AR2ueGcpNU0B}t`h~#xfjn-&0M2VZPd$=1Em%Q)FZHNbX(`_hX?e08 z($b{lV(RIzy{TwZE9`WpD7T_|6fyXXscX1Af9L-C#@&bU{iw6iZOX2Sw!&ttbJvFr z-D>KMcBpmKk?+d5p||DQYWHDUmPpi!rF<12x&p(TBK zj{TOEp`87SLAgRugo1?w=COJajV`6-$>`1rHW5v~0mPWakZi!WIHco{3~~($4!)N_ zaB9Ar7Id#0Dn&GHA%0PnY5gK4d?&poWwYJT8l{sc%GOFvcoU~4&6u#eBkEncI`I`B-^mEt)YJUw;@rl33#bz&x2H_z zLgwhu$XPmB(=s|s_$#q1cZp4Dd9`dRX_D+{`dm>Bss!@_ZZ|3M>=u6;u@ibrbM$7T z{E}KA0&NKGsO2O7lS$i8m~~06^4|hsx%EonJ>6y*QyQi)eVXw aIWqmPT6)#j@_X6%zfUaeAbalhg?|A_=%Y*k literal 0 HcmV?d00001 diff --git a/__pycache__/lesson_6_task_4.cpython-36.pyc b/__pycache__/lesson_6_task_4.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..021d5a5de7e9c39abc00a1b8186e422c94ddda48 GIT binary patch literal 1578 zcmbVMOOG5i5O#Zdp8Lv!*MWn@DJ_k1A#jKgigqQqzzV@_w2~Rx&2BH9?!oS1wWB%g z3jx{)afe7qoVd*nnS=y(_zUi9U-<_dbK)z{?qonB2W)kf?J8G&^>DwwveJ4wZhib$ zg|R=`!oZ&0!Dn6qQLMw>Wy(|hgeiW^JD#e1!~(y6~ulHjz~7eg@^XMIEAU= zv^Xm6iQ*7v6Z@bzF1{_kfjhVvL2`iQ84iz%)7!%IqDZwxm?fERi?n+;YKz#&UY5jR zByNzRvof~R064xAfI9-bhh*({JHd7e7qGOQwS~#EUR&gSo!(Hfj>0_7(x6RXr=(aM zAUfPzgbS2Y%rhV)aQE7x_=2^! zb;3GzwWOB88)`+Zf;ZKgx&q!(S5f5aWd-#byeQt^7fJR-l>U z@^|)1zP=ZDWpkeBunPY)h;w`!_{^&yLvP3=8*)%@SOMijAGD$v+6<9|RM)Z54I)hS1^C9tP&?A+e^U_al<(yd-7dpg@i&CJEode_9E z*-9c~vQ)k)^RD?!-n!Y_FB?+EX`D+*Rt*v6)!ZB`Q@>t{Lv*|w#OaZ^uwK9-XG6B@ zeUE2ypC5Z39u30bn}fQ@Qla~4z{_e+$7${`2cB->lEXYB%h;BDJ6i=elrZKEYUFx5 z`#(;pZzC0OP4=GW(kIQU3r-v4lnz6O0utg>Mi=XASjuY|b|e==dxlgyi2@@#*Sl4$A+O;9yuEm)%Nq9&HIY)N@H zQ~iY2%Tj*c?YXjcx#67ZHmSP>+`<>BDvjl literal 0 HcmV?d00001 diff --git a/lesson_6_task_3.py b/lesson_6_task_3.py index ce454c8..e465f8e 100644 --- a/lesson_6_task_3.py +++ b/lesson_6_task_3.py @@ -3,7 +3,7 @@ атрибуты: name, surname, position (должность), _income (доход). Последний атрибут должен быть защищенным и ссылаться на словарь, содержащий элементы: оклад и премия, например, { - "wage":wage, + "wage": wage, "bonus": bonus }. Создать класс Position (должность) на базе класса Worker. @@ -14,5 +14,25 @@ # run tmp_task_3.py for test class class Worker: - ''' Fuck ''' + ''' from dawn till dusk ''' + def __init__(self, name, surname, position, wage, bonus): + self.name = name + self.surname = surname + self.position = position + self._income = { + 'wage': wage, + 'bonus': bonus + } + +class Position(Worker): + + def __init__(self, name, surname, position, wage, bonus): + super(Position, self).__init__(name, surname, position, wage, bonus) + + def get_full_name(self): + print(self.name , ' ', self.surname) + + def get_total_income(self): + print(self._income['wage'], ' ', self._income['bonus']) + diff --git a/lesson_6_task_4.py b/lesson_6_task_4.py new file mode 100644 index 0000000..5bdeaa2 --- /dev/null +++ b/lesson_6_task_4.py @@ -0,0 +1,60 @@ +'''4. Реализуйте базовый класс Car. У данного класса должны быть следующие атрибуты: speed, color, name, is_police (булево). А также методы: go, stop, turn(direction), которые должны сообщать, что машина поехала, остановилась, повернула (куда). +''' + +class Car: + ''' My lovely car class ''' + _directions = ('L', 'R', 'Fw', 'Bw') + + def __init__(self, speed, color, name, is_police : bool ): + self.speed = speed + self.color = color + self.name = name + self.is_police = is_police + + def go(self): + print(f'{self.name} on run') + + def stop(self): + print(f'{self.name} stoped') + + def turn(self, direction): + self.direction = direction + print(f'{self.name} turning {self.direction} direction') + + def show_speed(self): + print(f' Current speed {self.speed}') + +vehicle = Car(100, 'red', 'tesla', False) + +vehicle.go() +vehicle.stop() +vehicle.turn('left') + +'''Опишите несколько дочерних классов: TownCar, SportCar, WorkCar, PoliceCar. Добавьте в базовый класс метод show_speed, который должен показывать текущую скорость автомобиля. Для классов TownCar и WorkCar переопределите метод show_speed. При значении скорости свыше 60 (TownCar) и 40 (WorkCar) должно выводиться сообщение о превышении скорости. +''' + +class TownCar(Car): + ''' TownCar переопределите метод show_speed. При значении скорости свыше 60 (TownCar) должно выводиться сообщение о превышении скорости.''' + def show_speed(self): + if self.speed > 60: + print(f'Warning speed > 60') + super().show_speed() + + +class SportCar(Car): + pass + + +class WorkCar(Car): + '''WorkCar переопределите метод show_speed. При значении скорости 40 (WorkCar) должно выводиться сообщение о превышении скорости.''' + def show_speed(self): + print(f'Current speed {self.speed}') + + +class PoliceCar: + def __init__(self, is_police : bool ): + self.speed = speed + self.color = color + self.name = name + self.is_police = is_police + \ No newline at end of file diff --git a/tmp_task_3.py b/tmp_task_3.py index e87274b..7c5331d 100644 --- a/tmp_task_3.py +++ b/tmp_task_3.py @@ -1,4 +1,11 @@ '''Проверить работу примера на реальных данных (создать экземпляры класса Position, передать данные, проверить значения атрибутов, вызвать методы экземпляров).''' from lesson_6_task_3 import Worker +from lesson_6_task_3 import Position +unit = Position('Dilly', 'Jonson', 'engineer', 1000, 6000) +print(unit.name) +print(unit.surname) +print(unit.position) +unit.get_full_name() +unit.get_total_income() \ No newline at end of file diff --git a/tmp_task_4.py b/tmp_task_4.py new file mode 100644 index 0000000..f2a0818 --- /dev/null +++ b/tmp_task_4.py @@ -0,0 +1,10 @@ +'''Опишите несколько дочерних классов: TownCar, SportCar, WorkCar, PoliceCar. Добавьте в базовый класс метод show_speed, который должен показывать текущую скорость автомобиля. Для классов TownCar и WorkCar переопределите метод show_speed. При значении скорости свыше 60 (TownCar) и 40 (WorkCar) должно выводиться сообщение о превышении скорости. +''' +from lesson_6_task_4 import Car + +vehicle = Car(100, 'red', 'tesla', False) + +vehicle.go() +vehicle.stop() +vehicle.turn('left') + From fdaf30b4af50a9f79dd807de2ee6d0aaea1baceb Mon Sep 17 00:00:00 2001 From: Don Diamond Date: Fri, 22 Jan 2021 16:22:07 +0300 Subject: [PATCH 07/10] Update lesson_6_task_4.py MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Все интереснее и интереснее --- lesson_6_task_4.py | 83 +++++++++++++++++++++++++++++++++------------- 1 file changed, 60 insertions(+), 23 deletions(-) diff --git a/lesson_6_task_4.py b/lesson_6_task_4.py index 5bdeaa2..83b5ff3 100644 --- a/lesson_6_task_4.py +++ b/lesson_6_task_4.py @@ -2,33 +2,32 @@ ''' class Car: - ''' My lovely car class ''' - _directions = ('L', 'R', 'Fw', 'Bw') + ''' My lovely car class + self, name = 'noname', color = 'nocolor', speed :int = 0, is_police :bool = False ''' - def __init__(self, speed, color, name, is_police : bool ): - self.speed = speed + def __init__(self, name = 'noname', color = 'nocolor', speed :int = 0, is_police :bool = False ): + self.speed = speed self.color = color self.name = name self.is_police = is_police - def go(self): - print(f'{self.name} on run') - + def go(self, speed :int = 15): + print(f'{self.name} on run, speed up') + self.speed += speed + def stop(self): + self.speed = 0 print(f'{self.name} stoped') def turn(self, direction): - self.direction = direction - print(f'{self.name} turning {self.direction} direction') - - def show_speed(self): - print(f' Current speed {self.speed}') + if direction in ('left', 'right'): # ... , 'Fw', 'Bw') + print(f'{self.name} goes {direction} direction') + else: + raise ValueError('values must be left or right') -vehicle = Car(100, 'red', 'tesla', False) + def show_speed(self): + print(f'{self.name} current speed {self.speed}') -vehicle.go() -vehicle.stop() -vehicle.turn('left') '''Опишите несколько дочерних классов: TownCar, SportCar, WorkCar, PoliceCar. Добавьте в базовый класс метод show_speed, который должен показывать текущую скорость автомобиля. Для классов TownCar и WorkCar переопределите метод show_speed. При значении скорости свыше 60 (TownCar) и 40 (WorkCar) должно выводиться сообщение о превышении скорости. ''' @@ -48,13 +47,51 @@ class SportCar(Car): class WorkCar(Car): '''WorkCar переопределите метод show_speed. При значении скорости 40 (WorkCar) должно выводиться сообщение о превышении скорости.''' def show_speed(self): - print(f'Current speed {self.speed}') + if self.speed > 60: + print(f'Warning speed > 60') + super().show_speed() -class PoliceCar: - def __init__(self, is_police : bool ): - self.speed = speed - self.color = color - self.name = name +class PoliceCar(Car): + '''self, name, speed, is_police : bool = True''' + def __init__(self, name, speed, is_police : bool = True ): self.is_police = is_police - \ No newline at end of file + super().__init__(name, 'police color cheme', speed, True) + +vehicle = Car('tesla', 'red', 110) + +vehicle.go(70) +vehicle.turn('left') +vehicle.show_speed() +vehicle.stop() +vehicle.show_speed() + +car1 = TownCar('Towncar', 'white' , 20) +car2 = SportCar('Sportcar', 'black') +car2.go() +car3 = WorkCar('WorkCar', 'yellow' ) +car3.go(50) +car4 = PoliceCar('Sherif', 60) +print() + +car1.show_speed() +car2.show_speed() +car3.show_speed() +car4.show_speed() +print() + +car1.stop() +car1.go() +print() + +print(f"Скорость {car2.name} = {car2.speed}") +car2.go() +print(f"Скорость {car2.name} = {car2.speed}") +car2.go(250) +print(f"Скорость {car2.name} = {car2.speed}") + +print(f"{type(car4)} это машина полиции? {car4.is_police}") +print(f"{type(car1)} это машина полиции? {car1.is_police}") + +vehicle.go() +vehicle.show_speed() \ No newline at end of file From cd07c950094da245302fe7f6a8ed336fe8b0bea7 Mon Sep 17 00:00:00 2001 From: Don Diamond Date: Fri, 22 Jan 2021 16:24:13 +0300 Subject: [PATCH 08/10] Update lesson_6_task_4.py 40 !! --- lesson_6_task_4.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lesson_6_task_4.py b/lesson_6_task_4.py index 83b5ff3..fcdc6e8 100644 --- a/lesson_6_task_4.py +++ b/lesson_6_task_4.py @@ -35,8 +35,8 @@ def show_speed(self): class TownCar(Car): ''' TownCar переопределите метод show_speed. При значении скорости свыше 60 (TownCar) должно выводиться сообщение о превышении скорости.''' def show_speed(self): - if self.speed > 60: - print(f'Warning speed > 60') + if self.speed > 40: + print(f'Warning speed > 40') super().show_speed() From 0531f322a3647bc8dae3a3fa897cd35e7f7ddf69 Mon Sep 17 00:00:00 2001 From: Don Diamond Date: Fri, 22 Jan 2021 17:05:36 +0300 Subject: [PATCH 09/10] Create lesson_6_task_5.py draw it ! draw it all --- lesson_6_task_5.py | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 lesson_6_task_5.py diff --git a/lesson_6_task_5.py b/lesson_6_task_5.py new file mode 100644 index 0000000..3f7f063 --- /dev/null +++ b/lesson_6_task_5.py @@ -0,0 +1,43 @@ +'''5. Реализовать класс Stationery (канцелярская принадлежность). Определить в нем атрибут title (название) и метод draw (отрисовка). Метод выводит сообщение “Запуск отрисовки.” Создать три дочерних класса Pen (ручка), Pencil (карандаш), Handle (маркер). В каждом из классов реализовать переопределение метода draw. Для каждого из классов методы должен выводить уникальное сообщение. Создать экземпляры классов и проверить, что выведет описанный метод для каждого экземпляра. +''' +class Stationery: + ''' (канцелярская принадлежность). ''' + title = "название" + def draw(self): + '''(отрисовка). Метод выводит сообщение “Запуск отрисовки.” ''' + print("“Запуск отрисовки.”") + +#Создать три дочерних класса +class Pen(Stationery): + '''(ручка) + переопределение метода draw. ''' + def draw(self, item = "ручка"): + print(f"“Запуск отрисовки:\n item 1 = {item} ”") + +class Pencil(Stationery): + '''(карандаш) + переопределение метода draw. ''' + def draw(self, item = "карандаш"): + print(f"“Запуск отрисовки:\n item 2 = {item} ”") + + +class Handle(Stationery): + ''' (маркер) + переопределение метода draw. ''' + def draw(self, item = "маркер"): + print(f"“Запуск отрисовки:\n item 2 = {item} ”") + + +''' Создать экземпляры классов и проверить, + что выведет описанный метод для каждого экземпляра.''' + +stationery = Stationery() +stationery.draw() + +pen = Pen() +pencil = Pencil() +handle = Handle() + +pen.draw('square') +pencil.draw('round') +handle.draw('triangle') \ No newline at end of file From d716f97b570071dd1b09a4a8eadfc8925b7f4c2c Mon Sep 17 00:00:00 2001 From: Don Diamond Date: Fri, 22 Jan 2021 17:30:17 +0300 Subject: [PATCH 10/10] Update lesson_6_task_5.py updated task 5 --- lesson_6_task_5.py | 40 +++++++++++++++++++++++----------------- 1 file changed, 23 insertions(+), 17 deletions(-) diff --git a/lesson_6_task_5.py b/lesson_6_task_5.py index 3f7f063..9ef7047 100644 --- a/lesson_6_task_5.py +++ b/lesson_6_task_5.py @@ -2,42 +2,48 @@ ''' class Stationery: ''' (канцелярская принадлежность). ''' - title = "название" + def __init__(self, title = 'default'): + self.title = title def draw(self): '''(отрисовка). Метод выводит сообщение “Запуск отрисовки.” ''' print("“Запуск отрисовки.”") + #Создать три дочерних класса class Pen(Stationery): '''(ручка) переопределение метода draw. ''' - def draw(self, item = "ручка"): - print(f"“Запуск отрисовки:\n item 1 = {item} ”") + def __init__(self): + super().__init__('pen') + def draw(self, item:str = 'текст'): + print(f" {self.title} написан {item} ”") class Pencil(Stationery): - '''(карандаш) - переопределение метода draw. ''' - def draw(self, item = "карандаш"): - print(f"“Запуск отрисовки:\n item 2 = {item} ”") - + '''(карандаш) ''' + def __init__(self): + super().__init__('pencil') + def draw(self): + print(f" item 3 = {self.title} ”") class Handle(Stationery): - ''' (маркер) - переопределение метода draw. ''' - def draw(self, item = "маркер"): - print(f"“Запуск отрисовки:\n item 2 = {item} ”") - + ''' (маркер) ''' + def __init__(self): + super().__init__('маркер') + def draw(self): + print(f" item 3 = {self.title} ”") ''' Создать экземпляры классов и проверить, что выведет описанный метод для каждого экземпляра.''' stationery = Stationery() stationery.draw() - pen = Pen() +pen.draw() pencil = Pencil() +pencil.draw() handle = Handle() -pen.draw('square') -pencil.draw('round') -handle.draw('triangle') \ No newline at end of file +handle.draw() +pen.draw('test text for pen') +''' +''' \ No newline at end of file