python5

本文介绍了编程中的几个经典问题,包括斐波那契数列、楼梯步数计算、回文字符串判断、质数检测、字符串转换、路径解析、汉字计数、字符串排列和替换等。通过实例展示了如何利用递归和动态规划解决这些挑战,并提供了字符串操作的实用技巧,如查找特定字符位置、去除空格和替换特定词汇。此外,还涉及了游戏名称的大小写不敏感比较和日期格式转换。
摘要由CSDN通过智能技术生成

2 有一对兔子,从出生后的第3个月起,每个月都生一对兔子,
小兔子长到第3个月后每个月又生一对兔子,
假如兔子不死,问第n个月第兔子对数为多少?
“”"

#def fibo(n):

if n<3:
return n
else:
return(fibo(n-1)+fibo(n-2))
#num = int(input(“请输入一个数:”))
#res = fibo(num)
#print(res)
在这里插入图片描述
3、假设用户每次上楼梯只能上一个台阶或者两个台阶,请写一个函数,
判断用户到第n台阶共有多少种走法
“”"
#def get_count(n):

if n == 1:
return 1
if n == 2:
return 2
return get_count(n - 1) + get_count(n - 2)
#num = int(input(“请输入一个数:”))
#res = get_count(num)
#print(res)
在这里插入图片描述
4、找出10000以内能被5或6整除,
但不能被两者同时整除的数(函数)
“”"
#def aa():

for i in range(1, 10001):
if i % 5== 0 or i % 6 == 0 and i % 30 != 0:
print(i,end=" “) #数字太多,不换行打印
#aa()
在这里插入图片描述
在这里插入图片描述
写一个方法,计算列表所有偶数下标元素的和(注意返回值)
“””
#def a(lst):

lst1=[]
for i in range(len(lst)):
if i%2==0:
lst1.append(i)
return lst1
#lst=[1,4,7,10,12,15,20]
#print(a(lst))
#sum=0
#for l in range(0,len(lst),2):

sum+=lst[l]
#print(sum)
在这里插入图片描述
“”“回文字符串”""

#def is_plaindrome(content):

for i in range(len(content)//2):
print(content[i])
print(content[len(content)-1-i])
if content[i]!=content[len(content)-1-i]:
return Flase
return True
#if name == ‘main’:

msg=“123454321”
res=is_plaindrome(msg)
if res:
print(“是一个回文字符串”)
else:
print(“不是一个回文字符串”)
在这里插入图片描述
#""“判断是否素数”""
#def is_zhishu(num):

i =2
while i < num:
s = num % i
if s == 0:
break
else:
i +=1
if num == i:
print(“是质数”)
else:
print(“不是质数”)
#num = int(input(“输入一个数值:”))
#res=is_zhishu(num)
#print(res)
在这里插入图片描述
8.根据完整的路径从路径中分离文件路径、文件名及扩展名
“”"

#import os
#path=“C:\Users\wuyanzu\x1.jpg”
#dir,file=os.path.split(path)
#print(dir)
#print(file)
在这里插入图片描述
9.获取字符串中汉字的个数
“”"

#def get_number(char):

count = 0
for item in char:
if 0x4E00 <= ord(item) <= 0x9FA5:
count += 1
return count
#char=input(“请输入一个字符串”)
#res=get_number(char)
#print(res)
在这里插入图片描述
10.将字母全部转换为大写或小写
“”"
#def get_number(msg):

print(msg.upper())
print(msg.lower())
#res=get_number(msg)
在这里插入图片描述

“”"
11.根据标点符号对字符串进行分行
“”"
#string=input(“请输入数据\n”)
#fuhao=input(“请输入要分行的符号”)
#string=string.split(’,’)
#print(string)
#for i in string:

print(i)
在这里插入图片描述

“”"

12.去掉字符串数组中每个字符串的空格
“”"
#def out_space(s):

a = ‘’
for i in s:
if i != ’ ':
a += i
return a
#num=input(“请输入一个字符串”)
#res=out_space(num)
#print(res)
在这里插入图片描述

14.两个学员输入各自最喜欢的游戏名称,判断是否一致,如
果相等,则输出你们俩喜欢相同的游戏;如果不相同,则输
出你们俩喜欢不相同的游戏。
“”"
#s1 = input(“你喜欢的游戏名字:”)
#s2 = input(“他最喜欢的游戏名字:”)
#if s1 == s2:

print(“你们最喜欢的游戏是:{}”.format(s1))
#else:

print(“你最喜欢的游戏是:{}”.format(s1))
print(“他最喜欢的游戏是:{}”.format(s2))

在这里插入图片描述

“”"
15.上题中两位同学输入 lol和 LOL代表同一游戏,怎么办?
“”"
#s1 = input(“你喜欢的游戏名字:”)
#s2 = input(“他最喜欢的游戏名字:”)
#s1 = s1.upper()
#s2 = s2.upper()
#if s1 == s2:

print(“你们最喜欢的游戏是:{}”.format(s1))
#else:

print(“你最喜欢的游戏是:{}”.format(s1))
print(“他最喜欢的游戏是:{}”.format(s2))

在这里插入图片描述

“”"
16.让用户输入一个日期格式如“2008/08/08”,将 输入的日
期格式转换为“2008年-8月-8日”。
“”"

#s = input(“请输入日期,格式如2008/02/02:”)
#ls = s.split("/")
#print(“转换后的日期格式:{}年{}月{}日”.format(ls[0],ls[1],ls[2]))

在这里插入图片描述

“”"

18.接收用户输入的一句英文,将其中的单词以反序输
出,“hello c sharp”→“sharp c hello”。
“”"

#s = input(“请输入字符串”)
#ls = list(s)
#ls.sort()
#ls.reverse()
#s = “”
#for i in range(0,len(ls)):

s += ls[i]
#print(s)
在这里插入图片描述

19.从请求地址中提取出用户名和域名
http://www.163.com?userName=admin&pwd=123456
“”"

#s = “http://www.163.com?userName=admin&pwd=123456”
#ls = s.split("/")
#s1 = ls[2]
#ls2 = s1.split("?")
#print(“域名是:{}”.format(ls2[0]))
#s1 = ls2[1]
#ls3 = s1.split("&")
#s1 = ls3[0]
#ls4 = s1.split("=")
#print(“用户名是:{}”.format(ls4[1]))
##用分割方法。
#print(“域名是:{},用户名是:{}”.format(s[s.rfind("/")+1:s.find("?")],s[s.find("=")+1:s.find("&")]))
在这里插入图片描述

21.让用户输入一句话,找出所有"呵"的位置。
“”"

#s = input(“请输入一段话!”)
#ls = []
#for i in range(0,len(s)):

if s[i] == “呵”:
ls.append(i)
#print(“呵的位置是:{}”.format(ls))

在这里插入图片描述

23.让用户输入一句话,判断这句话中有没有邪恶,如果有邪
恶就替换成这种形式然后输出,如:“老牛很邪恶”,输出后变
成”老牛很**”;
“”"

#s = input(“请输入字符串:”)
#print("{}".format(s.replace(“邪恶”,"**")))

在这里插入图片描述

“”"
26.如何随机生成无数字的全字母的字符串
“”"
import string
import random
s = string.ascii_letters
s1 = “”
for i in range(1,20):
s1 += random.choice(s)
print(s1)
在这里插入图片描述

“”"
27.如何随机生成带数字和字母的字符串
“”"
import string
import random
s = string.ascii_letters + string.digits ##前为生成字母,后为生成数字
s1 = “”
for i in range(1,20):
s1 += random.choice(s)
print(s1)
在这里插入图片描述

“”"
28.如何判定一个字符串中既有数字又有字母
“”"
import string
s = input(“输入需要判断的字符串:”)
if (s.isalnum()and not s.isalpha()) and not s.isdigit():
print(“字符串{}里包含数字和字母”.format(s))
else:
print(“字符串{}里并不是既包含字母又包含数字”.format(s))

在这里插入图片描述

“”"
29.字符串内的字符排序(只按字母序不论大小写)
“”"
s = input(“请输入字符串”)
s1 = s.upper()
ls = list(s1)
ls.sort()
s2 = “”
for i in range(0,len(ls)):
s2 += ls[i]
print(s2)
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值