python3 100例 一码人学习笔记(61-70)

题目66:输入3个数a,b,c,按大小顺序输出。 

if __name__ == '__main__':
    n1 = int(input('n1 = :\n'))
    n2 = int(input('n2 = :\n'))
    n3 = int(input('n3 = :\n'))
 
    def swap(p1,p2):
        return p2,p1
 
    if n1 > n2 : n1,n2 = swap(n1,n2)
    if n1 > n3 : n1,n3 = swap(n1,n3)
    if n2 > n3 : n2,n3 = swap(n2,n3)
 
    print( n1,n2,n3)
n1 = :
2
n2 = :
1
n3 = :
4
1 2 4
Press any key to continue . . .

 题目67:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。

import numpy as np
a = []
for i in range(5):
    a.append(input("Please input a number: "))
print (a)
a = np.array(a)
#得到最大值的索引
max_index = np.argmax(a)
#得到最小值的索引
min_index = np.argmin(a)
a[0], a[max_index] = a[max_index], a[0]
a[-1], a[min_index] = a[min_index], a[-1]
print (a)
Please input a number: 4
Please input a number: 2
Please input a number: 3
Please input a number: 5
Please input a number: 6
['4', '2', '3', '5', '6']
['6' '4' '3' '5' '2']
Press any key to continue . . .

 题目68:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数

n=int(input("输入整数1~n:"))
List=[]
for i in range(1,n+1):
    List.append(i)
print("打印1~n:",List)
print()
m=int(input("输入要移动的位数:"))
List2=List[n-m:n+1]+List[0:n-m]
print("打印移动后的结果:",List2)
输入整数1~n:12
打印1~n: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]

输入要移动的位数:4
打印移动后的结果: [9, 10, 11, 12, 1, 2, 3, 4, 5, 6, 7, 8]
Press any key to continue . . .

题目69:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。

n=int(input("输入人数:"))
List=[]
for i in range(1,n+1):
    List.append(i)

sum=0
while 1:
    t=0;
    for i in range(1,len(List)+1):
        sum=sum+1
        if (sum)%3==0:
            List.pop(i-1-t)
            t=t+1

    if len(List)==1:
        print("最后留下的是原来第%d号的那位" % List[0])
        break
输入人数:34
最后留下的是原来第10号的那位
Press any key to continue . . .

题目70:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。

if __name__ == '__main__':
    s = input('please input a string:\n')
    print ('the string has %d characters.' % len(s))
please input a string:
python
the string has 6 characters.
Press any key to continue . . .

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值