python之《中级编程问题》

一,反转一个字符串(回文检测)

1,反转一个字符串

a=input("请输入字符串:")
b = a[::-1]
print(b)

2,回文检测

a=input("请输入字符串:")
b = a[::-1]
if a==b:
    print('回文!')
else:
    print('不回文!')

二,计算最大公约数

def gys(x,y):
    '''该函数返回两个数的最大公约数'''
    #获取最小值
    if x>y:
        smaller = y
    else:
        smaller = x

    for i in range(1,smaller+1):
        if((x%i == 0)and(y%i == 0)):
            gys = i
    return gys

num1 = int(input('输入第一个数字:'))
num2 = int(input('输入第二个数字:'))

print("公约数为:",gys(num1,num2))

三,合并两个有序数组

def shuzu_sort(a,b):
    m=[]
    i=0
    j=0
    l1=len(a)-1
    l2=len(b)-1
    while i<=l1 and j<=l2:
        if a[i]<=b[j]:
            m.append(a[i])
            i+=1
        else:
            m.append(b[j])
            j+=1
    m+=a[i:]+b[j:]
    return m
a=[1,2,3,4]
b=[4,24,68]
print(shuzu_sort(a,b))

四,猜数字游戏

import random
a=random.randint(1,100)
n=input("请输入一个数字:")
if n.isdigit():
    n=int(n)
    if n==a:
        print("恭喜!猜对了!")
    elif n>a:
        print("猜的数字太大了!")
    else:
        print("猜的数字太小了!")
else:
    print("你输入的不是整数,请重新输入!")

五,删除列表中的重复项

a = [1,2,3,4,5,2,4,1,7,8]
b=[]
for each in a:
    if each not in b:
        b.append(each)
print(b)

 

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值