acgods
发表于 2018-8-24 10:57:51
本帖最后由 acgods 于 2018-8-24 11:19 编辑
# 题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
# list1 =
list1 = []
for i in range(5):
x = int(input("请输入一个数组:"))
list1.append(x)
print(list1)
temp = list1
maxIndex = 0
minIndex = 0
for i in range(len(list1)):
if list1 > temp:
maxIndex = i
elif list1 < temp:
minIndex = i
temp = list1
list1 = list1
list1 = temp
temp = list1
list1 = list1
list1 = temp
print(list1)
看了大家的答案后,又对原来的代码进行了修改
# 方法2
list2 =
# for i in range(5):
# x = int(input("请输入一个数组:"))
# list2.append(x)
print("原来的列表是:",list2)
maxIndex = list2.index(max(list2))
minIndex = list2.index(min(list2))
list2,list2 = list2,list2
list2[-1],list2 = list2,list2[-1]
print("新的列表是:",list2)
我不会啊
发表于 2018-8-30 14:56:13
赞
冷焰溶冰
发表于 2018-9-11 23:23:19
import random
give_list=[]
for i in range(6):
tmp = random.randint(1,100)
if tmp not in give_list:
give_list.append(tmp)
else:
give_list.append(random.randint(110+i,110+i+1))
print(give_list)
give_list,give_list = give_list,give_list
print(give_list)
give_list,give_list[-1] = give_list[-1],give_list
print(give_list)
lyslyslys
发表于 2018-9-12 10:00:11
学习学习
sxzpf
发表于 2018-9-12 10:02:22
666
oujq2541
发表于 2018-9-12 11:10:54
学习学习
sxzpf
发表于 2018-9-12 19:01:50
b=input('请输入数组元素,每个数之间用逗号隔开:')
a=
c=d=0
for i in range(len(a)):
if a>a:
c=a
a=a
a=c
elif a<a:
d=a
a=a
a=d
print(a)
Charm颜渊
发表于 2018-9-12 20:06:19
66666666666666666
apple_wt
发表于 2018-10-11 10:39:25
学习下
apple_wt
发表于 2018-10-11 14:13:20
#!/usr/bin/python
# -*- coding:utf-8 -*-
def fun_max():
max = 0
n=0
for num in range(len(li)):
if max>li:
pass
else:
max =li
n=num
li,li = li,li
print(li)
def fun_min():
min =li
m=0
for k in range(len(li)):
if min<li:
pass
else:
min =li
m=k
li,li[-1] = li[-1],li
print(li)
import random
li = []
for i in range(5): #循环次数,控制产生随机数的个数
li.append(random.randint(0, 50)) #产生一个0到50的随机数
print(li)
fun_max()
fun_min()
wangl81815
发表于 2018-10-13 22:18:22
学习
archlzy
发表于 2018-10-16 12:59:12
回复看咪咪
Roc乘风
发表于 2018-10-25 16:55:47
本帖最后由 Roc乘风 于 2018-10-25 17:13 编辑
打卡,看楼主的法宝
def fl(n):
score =[]
for i in range(0,n):
x = int(input('Plesae input:'))
score.append(x)
score1 = max(score)
score2 =min(score)
score,score = score1,score2
return score
print(fl(9))
日了狗了,写错了,,,我发现我就是在写bug{:5_100:}
重写:
def fl(n):
score =[]
for i in range(0,n):
x = int(input('Plesae input:'))
score.append(x)
score,score= score,score
score, score = score,score
return score
print(fl(9))
liujian973
发表于 2018-11-16 15:34:04
ooxx7788 发表于 2017-3-30 18:19
其实只需要一句!
输出
老哥能解释下,看不懂交换位置的那2句
liujian973
发表于 2018-11-16 15:34:51
冬雪雪冬 发表于 2017-3-30 19:24
没有想到更好的写法。
老哥能给解释下吗?交换顺序的那2句看不懂
冬雪雪冬
发表于 2018-11-16 15:41:35
liujian973 发表于 2018-11-16 15:34
老哥能给解释下吗?交换顺序的那2句看不懂
就是简单的变量的值交换,其它语言如果交换两个变量a和b需要
temp = a
a = b
b = temp
而python则可以简单的写成:
a, b = b, a
liujian973
发表于 2018-11-16 16:14:41
本帖最后由 liujian973 于 2018-11-16 16:41 编辑
冬雪雪冬 发表于 2017-3-30 19:24
没有想到更好的写法。
lst =
print(lst)
maxx = max(lst)
minn = min(lst)
lst, lst = lst, lst
lst[-1], lst = lst, lst[-1]
print(lst)
————————————————————————————
lst, lst = lst, lst
这一句看不懂,lst = lst 怎么交换的
前后两个st, 都是同样的值
冬雪雪冬
发表于 2018-11-16 16:38:43
liujian973 发表于 2018-11-16 16:14
lst, lst = lst, lst
这一句看不懂,都是 lst 怎么交换的
相当于同时将lst的值给lst,lst的值给 lst
即等同于:
temp = lst
lst = lst
lst = temp
liujian973
发表于 2018-11-16 16:45:50
冬雪雪冬 发表于 2018-11-16 16:38
相当于同时将lst的值给lst,lst的值给 lst
即等同于:
temp...
抱歉我之前弄错了,将表达时看错了,看成了3部分一直没看懂。谢谢了
之前看成了#lst,# lst = lst,# lst
liujian973
发表于 2018-11-16 16:54:38
def max_and_min(list0):
max_number=
min_number=
for i in enumerate(list0):
ifi >max_number:
max_number=i
ifi <min_number:
min_number=i
list0,list0],list0[-1],list0]=list0],list0,list0],list0[-1]
return list0