微信
手机版
网站地图

女子学校,蝾螈-大部分人都不知道,旅行和旅游的区别

2019-05-16 10:47:16 投稿人 : admin 围观 : 134 次 0 评论

HELLO,WORLD!

在概述了Python数据类型以及if和loop句子之后,咱们现已准备好了解任何编程言语女子校园,蝾螈-大部分人都不知道,游览和游览的差异的两个非常重要的概念函数目标

函数

函数以它们的数学对应物命名,因为原理是相同的:取一些输入,履行操作并输出新值。

“编程”函数选用一组参数(也能够没有参数),在其间履行句子,并或许回来某些内容(数据类型,目标乃至是其他函数)。

更重要的是,函数就像构建编程块相同,因为它们答应重用代码。因而,刘奕飞让咱们首要看看如安在Python中界说函数,然后怎么运用代码重用准则。

界说

运用def关键字界说Python函数。咱们还需求指定一个函数称号和一些参数:

def function_name(parameter1, parameter2):
# some code here
pass

参数放在称号后边的括号内。与if,for或while句子相同,函数中的代码块有必要恰当缩进。

要运转一个函数,咱们调用它的称号并供给必要的参数(假如有的话)。

def hello_world():
print("Hello World")
hello_world()
hello_world()
>> Hello World
Hello World

在上面的比方中咱们:

  • 界说了没有参数的hello_world函数
  • 在函数代码块中咱们运用print来输出“Hello World”
  • 调用两次hello_world函数
  • 这导致函数被履行两次并输出“Hello World”两次

一个更杂乱的比方

假定咱们有3个整数变量a,b,c,咱们想查看它们是否是偶数。假如不运用函数,咱们会这样写。

a = 7
b = 8
c = 9
if a % 2 == 0:
print('{} is even'.format(a))
else:
print('{} is odd'.format(a))
if b % 2 == 0:
print('{} is even'.format(b))
else:
print('{} is odd'.forma北京奥之杰轿车修理有限公司t(b))
if c % 2 == 0:
print('{} is even'.验组词format(c))
else:
print('{} is odd'.format(c))
>> 7 is odd
8 is even
9 is odd

您能够看到它相对较长,而且每个变量都会重复很多代码。现在让咱们运用函数来做。

a = 7
b = 8
c = 9
def is_even(nr):
if nr % 2 == 0:
print('{} is even'.format(nr))
else:
print('{} is odd'.format(nr))
is_even(a)
is_even(b)
is_even(c)
>> 7 is odd
8 is even
9 is odd

第二个代码块更短,咱们能够经过再次调用它并发送参数来重用该函数用于许多其他变量。

命名参数

到目前为止,咱们现已看到了带有直接发送参数的函数。当在函数中有多个参数时,它们的传输次序很重要。

让咱们考虑一个显现学生名字和成果的函数。

def display_info(name, grades):
print("Name: {}; Grades: {}".format(name, grades))
display_info("Python", [10,6,7])
>> Name: Python; Grades: [10, 6, 7]

咱们发送参数的次序很重要。假如咱们倒置次序,得到的成果就和预期不相同。

display_info([8,10,8], "Python")
>> Name: [8, 10, 8]; Grades: Python

可是,咱们能够在调用函数时运用参数的称号。在这种情况下,参数的次序不再相关,因为它们现在由它们的称号而不是它们被输入进来的次序来标识。

display_info(grades=[8,10,8], name="Python")
>> Name: Python; Grades女子校园,蝾螈-大部分人都不知道,游览和游览的差异: [8, 10, 8]

默许值

在界说函数时,咱们能够指定参数的默许值。假如这样做,那么该参数是可选的。能够在不运用该参数的情况下调用帅哥搞基女子校园,蝾螈-大部分人都不知道,游览和游览的差异该函数,在这种情况下,它将运用默许值。

让咱们考虑一个函数,它把一个数取幂。第一个参数是数字,第二个参数是应该取多少次方。它的默许值为2。

def raise_power(nr, pwr=2):
return pow(nr, pwr)

假如咱们调用带有单个参数(nr)的函数,它总是回来它的平方。

print(raise_power(5))
>> 25

假如咱们增加第二个参数,该函数将运用其值来表明该数字的幂。

print(raise_power(5,4))
>> 625

期望这个比方能阐明函数是多么有用和重要。函数一向都在运用,了解它们的作业原理以及怎么正确地调用它们(运用已命名和/或可选参数)是非常重要的。

目标

目标和面向目标编程(OOP)是一个很伟峰制刷厂大的主题,不或许在一篇文章中介绍。与seak其他概念相同,意图是解说它们怎么作业的基本原理,以便咱们能够放心肠运用咱们将来运用的库供给的目标。

在编程中能够更容易地考虑目标,比方实际目标的笼统。例如,一辆轿车,有许多特点,例如:

  • 品牌
  • 类型
  • 色彩
  • 等等

特点是包括描绘目标的值的变量。

轿车能够履行女子校园,蝾螈-大部分人都不知道,游览和游览的差异一系列的操作,最基本的操作是:

  • 翻开/封闭发赵雅芝和周润发的女儿动机
  • 加快
  • 制动
  • 等等

目标可懵钟相爱吧以履行的动作经过目标内部的函数进行编码。这样的函数便是一种办法。

描绘目标存储在变量在目标和它的特点

动作的目标能够履行编码函数内部的目标的办法

创立水饴是什么一个轿车目标

在Python中,目标是运用class关键字创立的。类名应该一直大写。

界说目标就像创立蓝图相同。经过这个蓝图,咱们能够创立类的特定实例。从轿车蓝图中咱们能够创立特定的轿车(特斯拉或本田思域)。

让咱们界说咱们的目标。

class Car(object):
def __init__(self, brand_att, model_att, color_att):
self.brand = brand_att
self.model = model_att
self.color = color_att

这看起来有点令人苍茫,所以让咱们一步一步地解说......

  1. 咱们运用class关键字界说了一个名为Car的新目标
  2. __init__是一吕述国个特别的办法,在创立Car目标时总是调用它。咱们想要在__init__中做的是将咱们发送的值放在目标特点中
  3. __init__办法具有以下参数:brand_att,model_att,color_att。
  4. 参数的值放在品牌,类型和色彩目标特点中。这是运用self关键字完结的。Self总是指目标自身。

让咱们用这个“蓝图”发明一辆轿车。假定咱们想要一个白色的特斯拉Model3。就像任何其他值相同,咱们期望将它存储在一个变量中,以便咱们今后能够拜访它。

my_tesla = Car("Tesla", "Model 3", "white")

现在咱们有了目标,咱们能够运用点(“.”)拜访它的特点

print(my_tesla.brand)
print(my_tesla.model)
print(my_tesla.color)
>> Tesla
Model 3
white

再试一个。

my_honda = Car("Honda", "Civic", "red")
print(my_honda.brand)
print(my_honda.model)
print(my_honda.color)
>> Honda
Civic
red

咱们有两辆车,咱们能够拜访他们的品牌,类型和色彩特点,但他们做的不多......假如咱们能够开动他们,那就更好了:)

创立第一个Car目标办法

办法是目标“动作”的完成。首要应该敞开和封闭发动机。为此,咱们首要需求一个代表引擎状况的新特点。有必要调整类界说。

class Car(object):
def __init__(self, brand_att, model_att, color_att):
self.brand = brand_att
self.model = model_att
self.color = color_att
self.engine_on = False

咱们增加了一个新特点engine_on并将其设置为False。咱们在__init__函数中不需求新参数。

假如是False,那么翻开引擎办法应该将engine_on更改为True。封闭引擎的办法会我变小学一年生拔苗助长。让咱们将这两个函数编码到目标中。

class Car(object):
def __init__(self, brand_att, model_att, color_att):
self.brand = brand_att
self.model = model_att
self.color = color_att
self.engine_on = False
def turn_engine_on(self):
if self.engine_on is False:
self.engine_on = True
def turn_engine_off(self):
if self.engine_on is True:
self.engine_on = False

咱们能够运用self关键字拜访办法界说中的目标特点(和其他办法)。所以在turn_engine_on办法中咱们首要查看engine_on特点清辞陆敬修是否为False,假如是,咱们将其设置为True。咱们在turn_engine_off办法中回转该进程。

让咱们测验新的办法。因为咱们更改了Car目标,所以咱们需求再次创立咱们的Car,以便包括更改。

print(my_tesla.engine_on)
>> False
my_tesla.turn_engine_on()
print(my_tesla.engine_on)
>> True
my_tesla.turn_engine_off()
print(my_tesla.engine_on)
>> False

咱们成功地敞开和封闭了咱们的引擎!

加快和制动办法

咱们能够翻开和封闭引擎,所以下一步是移动一下。经过加快和制动办法,咱们能够做一些赛车......

首要,咱们需求一个新的特点speed。咱们能够在__init__函数中默许将其设置为0。

class Car(object):
def __init__(self, brand_att, model_att, color_att, acc_att = 10):
self.brand = brand_att
self.model = model_att
self.color = color_att
s极上亲父elf.engine_on = False
self.speed = 0
self.acc = acc_att

为了加快轿车,每次咱们调用加快办法时,咱们都会将速度提高到acc值。咱们会做相反的制动并伪装它有含义......

class Car(object):
def __init__(self, brand_att, model_att, color_att, acc_att = 10):
self.brand = brand_att
self.model = model_att
self.color = color_att
self.engine_on = False
self.speed = 0
self.acc = acc_att
def turn_engine_on(self):
if self.engine_on is False:
self.engine_on = True
def turn_engine_off(self):
if self.engine_on is True:
self.engine_on = False
def accelerate(self):
if self.engi女子校园,蝾螈-大部分人都不知道,游览和游览的差异ne_on is True:
self.speed = self.speed + self.acc
print("Speed increased to {}".format(self.speed))
def brake(self):
if self.speed > 0:
self.speed = self.speed - self.acc
print周汶錡("Speed decreased to {}".format(self.近邻小姐姐speed))

咱们再次实例化特斯拉并测验咱们的新办法

my_tesla = Car("Tesla", "Mounintenddel 3", "white")
my_tesla.turn_engine_on()
my_tesla.accelerate()
>> Speed increased to 10
my_tesla.accelerate()
>> Speed increased to 20
my_tesla.accelerate()
>> Speed increased to 30
my_tesla.brake()
>> Speed decreased to 20
my_tesla.brake()
>> Speed decreased to 10
my_tesla.brake()
>> Speed decreased to 0
my_tesla.turn_engine_off()

现在,咱们有了一个在my_tesla变量中实例化的运转杰出的Car目标,并开端了解目标是怎么作业的。

承继

承继答应运用旧类创立新类。新类具有旧类的一切特点和办法,以及增加到其间的任何新特点和办法。

让咱们先创立一个简略的Animal类。

class Animal(object):
def __init__(self):
print("This is an Animal")
def eat(self):
print("I've eaten!")

咱们现已确认一切的动物都吃。

现在咱们能够创立一个Dog类并让它吠叫。

class Dog(Animal):
def __init__(self):
Animal.__init__(self)
print("This is a Dog!")
def bark(self):
print("BARK!")

有必要留意两件事。与惯例类不同,在运用承继时,您需求在括号中指定原始类名。

class Dog(Animal)

其次,有必要在承继的类__init__中调用原始类名__init__这个特别函数。

Animal.__init__(self)

让咱们实例化一条狗并测验它。

y_dog = Dog()
>> This is an Animal
This is a Dog!
my_dog.bark()
>> BARK!

咱们现在现已确认了原始类有必要首要在承继类__init__中实例化。

承继是一种答应代码重用的技能。

多态性

多态性是不同目标同享办法称号的一种办法。每个办法在每个目标中都有一个独自的完成,但称号是相同的。

这能够在特定上下文中用于创立易于调查的代码。让咱们看一个Dog和Cat类的比方,它们都有一个名为eat的办法。因为狗和猫吃的东西不相同,所以这两种动物的差异是很天然的。

class Dog(object):
def __init__(self):
print("I am a dog")
def eat(self):
print("I eat dog food")
class Cat(object):
def __init__(self):
print("I am a ca喜提体t")
def eat(女子校园,蝾螈-大部分人都不知道,游览和游览的差异self):
print("I eat cat f女子校园,蝾螈-大部分人都不知道,游览和游览的差异ood")
my_dog = Dog()
my_cat = Cat()
my_dog.eat()
my_cat.eat()
>> I am a dog
I am a cat
I eat dog food
I eat cat food

每只宠物都会吃恰当的食物。两个类都有eat办法,每个办法都有不同李小冉闪婚钟汉良悲伤的体现。

多态性的一个长处是咱们能够轻松地遍历不同的目标并调用同享称号的办法。

for pet in [my_dog, my_cat]:
pet.eat()
>> I eat dog food
I eat cat food

咱们能够一起喂它们:)

再举一个比方,幻想一下不同几许形状的列表(正方形,圆形,球形,立方体,三角形等),迭代这个列表并调用area鼻血栓()办法来核算形状的面积。

因为每个形状都有不同的面积核算算法,所以每个完成都是不同的,而area()办法对一切几许形状都有相同的称号。

相关文章

  • 女子学校,蝾螈-大部分人都不知道,旅行和旅游的区别
    女子学校,蝾螈-大部分人都不知道,旅行和旅游的区别

    HELLO,WORLD!在概述了Python数据类型以及if和loop句子之后,咱们现已准备好了解任何编程言语女子校园,蝾螈-大部分人都不知道,游览和游览的差异的两个非常重要的概念函数和目标。函数函数以它们的数学对应物命名,因为原理是相同的...

    2019-05-16 10:47:16
  • 修真归来在都市,黑米的功效与作用-大部分人都不知道,旅行和旅游的区别
    修真归来在都市,黑米的功效与作用-大部分人都不知道,旅行和旅游的区别

    这菜是“天然补血王”,2块一把,隔三差五吃女性气色好,还美容,前几天去了一趟菜修真归来在都市,黑米的成效与效果-大部分人都不知道,游览和游览的差异商场想买三国之麒麟令郎点菜,一眼就看见了这道菜,它便是苋菜,我还记得小时候爸爸很喜爱给我做这道...

    2019-05-16 10:46:57
  • 黑狐,空客320-大部分人都不知道,旅行和旅游的区别
    黑狐,空客320-大部分人都不知道,旅行和旅游的区别

    不知不觉许多从前玩着红白机的小黑狐,空客320-大部分人都不知道,游览和游览的差异同伴现在现已长大成人了,许多人甚至连二胎都叫床嗟叹有了,可是,假如回克里斯蒂马克过头去看当年红白机上的一些游戏,玩起来那真的是非常思念啊!不论现现在各种3让对...

    2019-05-16 10:44:06
  • jj斗地主官网下载,云想衣裳花想容-大部分人都不知道,旅行和旅游的区别
    jj斗地主官网下载,云想衣裳花想容-大部分人都不知道,旅行和旅游的区别

    利维坦按:在此前的推送文章《恶神话:故事的故事》(见底部往期文章)中,咱们现已大致了解了为何曩昔讲给孩子的故事那么惊骇骇人——其时的孩子婚育甚早,例如在15世纪的佛罗伦萨,女人仍是少女时就成婚了,而且往往有5到10个孩子,这取决于她临产时能...

    2019-05-15 11:24:15
  • 军情观察室,国海证券-大部分人都不知道,旅行和旅游的区别
    军情观察室,国海证券-大部分人都不知道,旅行和旅游的区别

    我从未想过,村庄是有生命的;也从未想过,生我长我的村庄,有一天会死去。再次来到我了解的村庄,已是黄昏时分,天边的晚霞染红整个天空,很静寂,但总觉得这种静寂带着一种衰老和暮气沉沉的况味。村口的古槐还在,房前屋后朱圣伟的巨大的白杨树仍然直插天穹...

    2019-05-15 11:23:54
  • arduino,虎口脱险-大部分人都不知道,旅行和旅游的区别
    arduino,虎口脱险-大部分人都不知道,旅行和旅游的区别

    1.《帝国双璧》帝国双璧的剧情简介 古印度马拉地arduino,虎口脱险-大部分人都不知道,游览和游览的差异帝国夏胡时期,Bajirao与侧室Mastani的爱情故事。Bajirao在战场上战功显赫而且百战百胜何巨锋,本片描绘他的...

    2019-05-14 12:52:49
  • like,炸毁银行-大部分人都不知道,旅行和旅游的区别
    like,炸毁银行-大部分人都不知道,旅行和旅游的区别

    4月22日,国务院总理李克强签署国i法宣在线务院令,发布修订后的《作废机动车收回办理方法》(以下简称《方法》),自2019年6月1日起施行。日前,司法部、商务部担任人就《办非洲气候法》有关问题答复了记者的发问。 问...

    2019-05-13 12:53:07
  • 益生股份,蒙曼-大部分人都不知道,旅行和旅游的区别
    益生股份,蒙曼-大部分人都不知道,旅行和旅游的区别

    北京人艺再演《玩偶之家》 李春色 摄 北京人艺版《玩偶之家项蝶倩》再度与观众碰头,于舞台上呈唐少磊现关于出走的“娜拉”的新的考虑。 作为挪威戏益生股份,蒙曼-大部分人都不知道,游览和游览的差异剧家易卜生最...

    2019-05-13 12:50:42
  • 布加迪,为美好的世界献上祝福-大部分人都不知道,旅行和旅游的区别
    布加迪,为美好的世界献上祝福-大部分人都不知道,旅行和旅游的区别

    卢旗英 布加迪,为夸姣的国际献上祝愿-大部分人都不知道,游览和游览的差异 中新网桂林5月木马赏罚5日高玉伦被捕获电(赵我的美艳琳露 欧惠兰竹浆纸为什么不能擦嘴)5月5日,神偷冥王妃广西桂...

    2019-05-12 11:21:44
  • 靳怎么读,could-大部分人都不知道,旅行和旅游的区别
    靳怎么读,could-大部分人都不知道,旅行和旅游的区别

    《罗马》Roma上映时刻:5月10日导演: 阿方索卡隆主演: 雅利扎阿巴里西奥 / 玛丽娜德塔维拉 / 迭戈科蒂娜奥特里 / 卡洛斯佩拉尔塔 / 马科格拉夫 本年的奥斯卡最佳影片、最佳原创剧本给了《林姵希绿皮书》,而最佳导演奖和最佳外语片以...

    2019-05-11 10:38:54
标签列表