第十五天作业

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()

5、 写一个方法,计算列表所有偶数下标元素的和(注意返回值)

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)

 

 6、回文字符串

7、判断是否素数

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()) 
msg=input("请输入大写字母:")
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)

 

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

s = input("请输入一段话!")
ls = []
for i in range(0,len(s)):
    if s[i] == "呵":
        ls.append(i)

print("呵的位置是:{}".format(ls))

14.从请求地址中提取出用户名和域名
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("&")]))

15、两个学员输入各自最喜欢的游戏名称,判断是否一致,如
果相等,则输出你们俩喜欢相同的游戏;如果不相同,则输
出你们俩喜欢不相同的游戏。 

s1 = input("你喜欢的游戏名字:")
s2 = input("他最喜欢的游戏名字:")
if s1 == s2:
    print("你们最喜欢的游戏是:{}".format(s1))
else:
    print("你最喜欢的游戏是:{}".format(s1))
    print("他最喜欢的游戏是:{}".format(s2))

 16.上题中两位同学输入 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))

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

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

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

 


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

19.如何随机生成无数字的全字母的字符串 

import string
import random
s = string.ascii_letters + string.digits  ##前为生成字母,后为生成数字
s1 = ""
for i in range(1,20):
    s1 += random.choice(s)
print(s1)

20.如何判定一个字符串中既有数字又有字母

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

 

21 、字符串内的字符排序(只按字母序不论大小写)

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、付费专栏及课程。

余额充值