鱼C论坛

 找回密码
 立即注册
楼主: 新手·ing

[技术交流] Python:每日一题 12

  [复制链接]
发表于 2017-4-11 18:06:27 | 显示全部楼层
新手·ing 发表于 2017-4-11 16:53
大兄弟,没鱼币了...
对了,要不要一起搞这个淘专辑
你有题吗

只是为了做做练习,熟练熟练的,没鱼币无所谓的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-13 21:03:40 | 显示全部楼层
每日学习。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-16 13:33:50 | 显示全部楼层
def mryt12(number):
 list1=[]
 for i in range(number):
  a=int(input('请输入一个数字'))
  list1.append(a)
 list2=list1.copy()
 list2.sort()
 max_index=list1.index(list2[0])
 min_index=list1.index(list2[number-1])
 list1[max_index]=list1[0]
 list1[min_index]=list1[number-1]
 list1[0]=list2[0]
 list1[number-1]=list2[number-1]
 return print(list1)
mryt12(10)
输入10个数

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
新手·ing + 3 + 3 支持楼主!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-17 10:51:26 | 显示全部楼层
本帖最后由 观测者 于 2017-4-17 10:54 编辑

1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-4-18 09:06:38 From FishC Mobile | 显示全部楼层
09:06
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-29 18:35:48 | 显示全部楼层
感觉找到然后直接交换就可以了,听说python里的这种直接交换很丧心病狂
x = [2,3,4,5,1,10,6,7,8,9]
a = x.copy()

num_max, num_min = a.index(max(a)), a.index(min(a))
a[0],a[num_max], a[-1],a[num_min] = a[num_max],a[0], a[num_min],a[-1] # 交换
print(a)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2017-5-2 17:05:48 | 显示全部楼层
#coding: gbk

def change(array):
    maxNum = max(array)
    maxIndex = array.index(maxNum)
    if maxIndex != 0:
        array[maxIndex] = array[0]
        array[0] = maxNum

    minNum = min(array)
    minIndex = array.index(minNum)
    length = len(array)
    if minIndex != length - 1:
        array[minIndex] = array[-1]
        array[length - 1] = minNum
    return array

list1 = [6,2,3,4,12,4,12,42,14,1452]
print(change(list1))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-6-1 21:38:46 | 显示全部楼层
temp = []
a = True
while a:
    x = input("请输入数字(输入Q结束):")
    if x == 'Q':
        a = False
    else:
        x = int (x)
        temp.append (x)
l = len (temp)
i = max (temp)
j = min (temp)
m = temp.index(i)
n = temp.index(j)
temp[0],temp[m] = temp[m],temp[0]
temp[n],temp[l-1] = temp [l-1],temp[n]
for each in temp:
    print (each,end=' ')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-14 17:56:54 | 显示全部楼层
def change(L):

    lenth = len(L)
    maxNum = L[1]
    minNum = L[0]
    for i in range(lenth):
        if L[i] < minNum:
            minNum = L[i]      
     
        if L[i] > maxNum:
            maxNum = L[i]
            
    L[L.index(minNum)],L[lenth-1] = L[lenth-1],L[L.index(minNum)] # 最小值和最后一个元素交换

    L[L.index(maxNum)],L[0] = L[0],L[L.index(maxNum)]  # 最大值和第一个元素交换

    return  L

L = [2,1,2,5,6,3,8,4]
print(change(L))
   
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-22 15:54:02 | 显示全部楼层
temp = input('请输入数组:')
old_list = str(temp).split()
new_list = []
for each in old_list:
        new_list.append(int(each))
max_num = new_list[0]
min_num = new_list[1]
max_index = 0
min_index = 1
for m in new_list:
    if m > max_num:
        max_index = new_list.index(m)
        max_num = m
    if m < min_num:
        min_index = new_list.index(m)
        min_num = m

new_list[max_index] = new_list[0]
new_list[0] = max_num
new_list[min_index] = new_list[-1]
new_list[-1] = min_num
print(new_list)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-23 16:28:23 | 显示全部楼层
学习学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-24 16:52:44 | 显示全部楼层
print('___________数字交换__________')
temp=[2,9,4,3,8,10,22,106,70,84,1,72]
the_max=max(temp)
the_min=min(temp)
the_max_sit=temp.index(the_max)
the_mim_sit=temp.index(the_min)
temp[the_max_sit]=temp[0]
temp[the_mim_sit]=temp[-1]
temp[0]=(the_max)
temp[-1]=(the_min)
print(temp)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-24 23:38:31 | 显示全部楼层
123123
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-14 21:52:03 | 显示全部楼层
list1 = [1, 2, 3, 4, 5, -1, 0, 19, 7, 8, 9]

max_index = list1.index(max(list1))
min_index = list1.index(min(list1))

list1[0], list1[max_index] = list1[max_index], list1[0]

list1[-1], list1[min_index] = list1[min_index], list1[-1]

print list1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-15 09:50:29 | 显示全部楼层
L = [int(x) for x in input('输入数组,以空格分开:').split(' ')]
L[0],L[L.index(max(L))] = L[L.index(max(L))],L[0]
L[-1],L[L.index(min(L))] = L[L.index(min(L))],L[-1]
print(L)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-18 15:59:29 | 显示全部楼层
看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-9-27 16:47:21 | 显示全部楼层
来个超呆的答案:
list1=[23,12,62,22,63,7,8,99,10]
a=list1.index(max(list1))
b=list1.index(min(list1))
temp=list1[0]
list1[0]=list1[a]
list1[a]=temp
temp=list1[-1]
list1[-1]=list1[b]
list1[b]=temp
print(list1)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-10 20:39:33 | 显示全部楼层
a= [int(i) for i in input('请输入一组数字,用空格隔开: ').split(' ')]
print(a)
b=max(a)
c=min(a)
a.reverse()
a.pop()
a.append(b)
a.reverse()
a.pop()
a.append(c)
print(a)
   
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-10 21:19:20 | 显示全部楼层
lumber2388779 发表于 2017-4-10 15:05
0 0最近有点忙都没时间去做题

arr[0],],],arr[maxindex]] = arr[maxindex],arr[0]

arr[-1],arr[minindex] = arr[minindex],arr[-1]
你好 能给解释下这两句话是什么意思吗?这样就可以将],arr[maxindex]赋值给arr[0]
了??

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-10 21:22:43 | 显示全部楼层
驻火蚁 发表于 2017-10-10 21:19
arr[0],],],arr[maxindex]] = arr[maxindex],arr[0]

arr[-1],arr[minindex] = arr[minindex],arr[-1]
...

arr[-1],arr[minindex] = arr[minindex],arr[-1]其实就是相互交换 两个变量的值这是python的特殊语法
如果分步写的话需要一个中间变量temp
temp = arr[minindex]
arr[minindex] = arr[-1]
arr[-1] = temp
你理解一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-14 23:10

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表