前言
大部分初学编程的人来说刚开始都会练习判断两个数或者三个数的大小,来熟悉某种语言的特性和最基本的if,else循环,当我们学习了更高级的语法知识后,又会有不同的实现方式,比如这道练习题依次接收用户输入的3个数,排序后打印现在我们来看一下在Python中都有哪些方法来实现:
1, 采用分支结构,用最基本的if和else来实现:
a = int(input('a>'))
b = int(input('b>'))
c = int(input('c>'))
if a>b:
if b>c:
print('a>b>c')
else:
if a>c:
print('a>c>b')
else:
print('c>a>b')
elif a<b:
if b<c:
print('c>b>a')
else:
if c>a:
print('b>c>a')
else:
print('b>a>c')
这可能是大部分初学编程er的第一想法,但较为繁琐,由于我最近刚学到列表list,那么如果用list来实现的话方法有哪些呢
2,引入列表
nums = []
for i in range(3):
nums.append(int(input('{}; '.format(i))))
if nums[0]>nums[1]:
if nums[0]>nums[2]:
i3 = nums[0]
if nums[1] > nums[2]:
i2 = nums[1]
i1 = nums[0]
else:
i2 = nums[0]
i1 = nums[1]
else:#0<2 1<0
i3 = nums[2]
i2 = nums[0]
i1 = nums[1]
else: #[0]<[1]
if nums[0] < nums[2]:
i1 = nums[0]
if nums[1] < nums[2]:
i2 = nums[1]
i3 = nums[2]
else:#[1]>[2]
if nums[0] > nums[2]:
i2 = nums[0]
i3 = mums[2]
else:
i2 = nums[2]
i3 = mums[0]
print(i1,i2,i3)
虽然我们在这里用了list,但是逻辑上还是第一种逐个比较后再打印的思想,所以可以看到,并没有变简洁。
3,使用Max函数
nums = []
for i in range(3):
nums.append(int(input('{}: '.format(i))))
#此处不能使用for循环,不能一边迭代该列表,同时删除或者增加该列表
while True:
x = max(nums)
print(x)
nums.remove(x)
if len(nums) == 1:
print(nums[0])
break
这种方法的思路是找出最大值,打印再剔除,直到最后打印出最小值。这样的话我们就能以较少的代码来实现这一任务了。max函数和min函数是Python的内置函数,在求最大值和最小值上更快速便捷。但当我们需要比较并打印出很多的数字时,这种方法就没那么高效了。
4,用列表的sort操作来实现大小比较并打印输出
sort(key=None, reverse=False) -> None
对列表元素进行排序,就地修改,默认升序
nums = []
out = None
for i in range(3):
nums.append(int(input('{}: '.format(i))))
nums.sort()
print(nums)
这一次可以看到,代码简洁了很多,而且即便我们需要增加输入量,比较多个数据也只需要做很少的改动即可。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。