亲宝软件园·资讯

展开

Python 排序

是梦吧,是你吧! 人气:0

1 案例描述

输入三个整数x,y,z,请把这三个数由小到大输出。

2 Python实现

2.1 方法一(官方)

L = []
for i in range(3):
    x = int(input('integer:\n'))
    L.append(x)
L.sort()
print(L)

#==========结果=====================

integer:
23
integer:
34
integer:
9
[9, 23, 34]

Process finished with exit code 0

简洁明了,痛快、痛快! 

2.2 方法二

new_list = input("请输入三个整数:")
a_list = new_list.split(",", 3)
a_list = list(map(int, a_list))
while len(a_list) > 0:
    number = max(a_list)
    print(number)
    a_list.remove(number)
 
print('#=======过程解析==========#')
print(type(new_list))
print(type(a_list))

请输入三个整数:23,34,9
34
23
9
#=======过程解析==========#
<class 'str'>
<class 'list'>

Process finished with exit code 0

重要知识点:

(1)指定分隔符对字符串进行切片split(str="", num=string.count(str))
前面填自己选择的分隔符,后面填需要分割成多少个的数值

(2)map()内置函数用处比较多,这里我暂时只用了它的一种方法:将str类型转成了int类型

(3)列表的max()方法,找到列表里的最大的数字

(4)列表的remove()方法,移除指定的元素

3 C语言实现

#include<stdio.h>
void main()
{
	int x,y,z,t;
	scanf("%d,%d,%d",&x,&y,&z);
	if(x>y)
    {
		t=x;
		x=y;
		y=t;
	}
 
	if(x>z)
    {
		t=x;
		x=z;
		z=t;
	}
 
	if(y>z)
    {
		t=y;
		y=z;
		z=t;
	}
	printf("从小到大依次为: %d  %d  %d\n",x,y,z);
}

加载全部内容

相关教程
猜你喜欢
用户评论