鱼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 | 显示全部楼层
  1. def mryt12(number):
  2. list1=[]
  3. for i in range(number):
  4.   a=int(input('请输入一个数字'))
  5.   list1.append(a)
  6. list2=list1.copy()
  7. list2.sort()
  8. max_index=list1.index(list2[0])
  9. min_index=list1.index(list2[number-1])
  10. list1[max_index]=list1[0]
  11. list1[min_index]=list1[number-1]
  12. list1[0]=list2[0]
  13. list1[number-1]=list2[number-1]
  14. return print(list1)
  15. 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里的这种直接交换很丧心病狂
  1. x = [2,3,4,5,1,10,6,7,8,9]
  2. a = x.copy()

  3. num_max, num_min = a.index(max(a)), a.index(min(a))
  4. a[0],a[num_max], a[-1],a[num_min] = a[num_max],a[0], a[num_min],a[-1] # 交换
  5. 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 | 显示全部楼层
  1. temp = []
  2. a = True
  3. while a:
  4.     x = input("请输入数字(输入Q结束):")
  5.     if x == 'Q':
  6.         a = False
  7.     else:
  8.         x = int (x)
  9.         temp.append (x)
  10. l = len (temp)
  11. i = max (temp)
  12. j = min (temp)
  13. m = temp.index(i)
  14. n = temp.index(j)
  15. temp[0],temp[m] = temp[m],temp[0]
  16. temp[n],temp[l-1] = temp [l-1],temp[n]
  17. for each in temp:
  18.     print (each,end=' ')
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

  2.     lenth = len(L)
  3.     maxNum = L[1]
  4.     minNum = L[0]
  5.     for i in range(lenth):
  6.         if L[i] < minNum:
  7.             minNum = L[i]      
  8.      
  9.         if L[i] > maxNum:
  10.             maxNum = L[i]
  11.             
  12.     L[L.index(minNum)],L[lenth-1] = L[lenth-1],L[L.index(minNum)] # 最小值和最后一个元素交换

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

  14.     return  L

  15. L = [2,1,2,5,6,3,8,4]
  16. print(change(L))
复制代码

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

使用道具 举报

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

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

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

  4. list1[0], list1[max_index] = list1[max_index], list1[0]

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

  6. 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 | 显示全部楼层
来个超呆的答案:
  1. list1=[23,12,62,22,63,7,8,99,10]
  2. a=list1.index(max(list1))
  3. b=list1.index(min(list1))
  4. temp=list1[0]
  5. list1[0]=list1[a]
  6. list1[a]=temp
  7. temp=list1[-1]
  8. list1[-1]=list1[b]
  9. list1[b]=temp
  10. 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-4-19 11:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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