作业1:求第n项的斐波那契数列的值(n>=1)

def fbnq(n):if n < 1:return -1if (1 == n) or (2 == n):return 1return fbnq(n-1) + fbnq(n-2)
def main():n = int(input("请输入求解第几项: "))result = fbnq(n)print("结果为%d"%result)
if __name__=='__main__':main()


作业2:小明考试非常好,妈妈为了奖励小明,给一对刚刚出生的兔子,
兔子可以经过四个月,可以长大称为成年的兔子,可以生育新的兔子,
假设成年兔子,每个月生一对小兔子,问,第n个月共有多少对兔子(加上兔子不死)

def rubbit(nums):if nums<5:return 1return rubbit(nums-1)+rubbit(nums-4)
def main():nums = int(input("请输入共养几个月: "))result = rubbit(nums)print("结果为%d"%result)
if __name__=='__main__':main()


作业3:给定一个包含n+1个整数的数组nums,其数字在1到n之间(包含1和n),
可知至少存在一个重复的整数,假设只有一个重复的整数,请找出这个重复的数

def get_num_duplicate(nums):temp = 0for i in range(0, len(nums)):temp ^= i ^ nums[i]return temp
if __name__ == '__main__':nums = [1,2,8,3,4,5,6,7,8]d = get_num_duplicate(nums)print(f"数组中重复的是{d}")


(选做题):
某个人进入如下一个棋盘中,要求从左上角开始走,最后从右下角出来(要求只能前进,不能后退),
问题:共有多少种走法?

0 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0checkerboard = [[0, 0, 0, 0, 0, 0, 0, 0][0, 0, 0, 0, 0, 0, 0, 0][0, 0, 0, 0, 0, 0, 0, 0][0, 0, 0, 0, 0, 0, 0, 0][0, 0, 0, 0, 0, 0, 0, 0][0, 0, 0, 0, 0, 0, 0, 0]
]
def board(arr):if arr is None:return 0if len(arr) == 1 and len(arr[0]) == 1:return 1for i in range(len(arr[0])):arr[0][i] = 1for i in range(len(arr)):arr[i][0] = 1for i in range(1, len(arr)):for j in range(1, len(arr[0])):arr[i][j] = arr[i - 1][j] + arr[i][j - 1]return arr[len(arr) - 1][len(arr[0]) - 1]
if __name__ == '__main__':ls = [[0, 0, 0, 0, 0, 0, 0, 0],[0, 0, 0, 0, 0, 0, 0, 0],[0, 0, 0, 0, 0, 0, 0, 0],[0, 0, 0, 0, 0, 0, 0, 0],[0, 0, 0, 0, 0, 0, 0, 0],]count = board(ls)print(f"从左上角开始走,到右下角,共有{count}种走法")


4、找出10000以内能被5或6整除,但不能被两者同时整除的数(函数)

def sum():for i in range(1,10000):if (i % 5==0 or i % 6==0) and i % 30!=0:print("10000以内能被5或6整除的数为:%s"%(i))
sum()


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

ls1=[1,2,3,4,5,6,7,8,9]
ls2=[]
def nums(ls1):for i in ls1:if i % 2 == 0:ls2.append(i)return sum(ls2)
print("所有偶数下标元素的和为:%s"%(nums(ls1)))


7、请使用函数完成选择、冒泡、插入三种排序

#选择
def select_sort(List1):ls1 = len(List1)for j in range(ls1):min_index = jfor i in range(min_index , ls1):if List1[min_index] > List1[i]:min_index = iList1[j], List1[min_index] = List1[min_index], List1[j]
if __name__ == "__main__":ls = [5, 10, 16, 18, 7]select_sort(ls)print("选择排序后的元素为:%s"%(ls))
# 冒泡
def bubble_sort(List2):n = len(List2)for i in range(0, n - 1):for j in range(0, n - i - 1):if List2[j] > List2[j + 1]:List2[j], List2[j + 1] = List2[j + 1], List2[j]if __name__ == "__main__":ls2 = [5, 10, 16, 18, 7]bubble_sort(ls2)print("冒泡排序后的元素为:%s"%(ls2))
# 插入
def insert_sort(List3):n = len(List3)for i in range(n):j = iwhile j > 0:if List3[j] < List3[j - 1]:List3[j], List3[j - 1] = List3[j - 1], List3[j]j -= 1
if __name__ == "__main__":ls3=[5, 10, 16, 18, 7]insert_sort(ls3)print("插入排序后的元素为:%s"%(ls3))


8.根据完整的路径从路径中分离文件路径、文件名及扩展名

import os
path="E:\Python\练习.py"
dir,file=os.path.split(path)
dir,ext=os.path.splitext(path)
print("路径为:%s"%(dir))
print("文件名为:%s"%(file))
print("文件扩展名为:%s"%(ext))


9.获取字符串中汉字的个数

import string
hanzi=str(input("请输入:"))
hanzi_number=char_number=0
for i in hanzi:if i in  string.ascii_letters:hanzi_number+=1elif i.isalpha():char_number+=1
print("汉字字符有:{}".format(char_number,))


10.将字母全部转换为大写或小写

en=str(input("请输入英文:"))
en1=en.upper()
en2=en.lower()
print('转换成大写字母为%s'%(en1))
print('转换成小写字母为%s'%(en2))


11.根据标点符号对字符串进行分行

en="好好学习,天天向上"
en1=en.split(",")
print(en1)


12.去掉字符串数组中每个字符串的空格

ls=["好好学习" "天天向上"]
ls1=str(ls)
ls1.strip()
print("去掉字符串数组中每个字符串的空格为:%s"%(ls1))


13.随意输入你心中想到的一个书名,然后输出它的字符串长度。 (len()属性:可以得字符串的长度)

bookname=str(input('请输入您喜欢的书籍名称:'))
nums=0
for i in bookname:nums+=1
print("这本书的字符串长度为%s"%(len(bookname)))


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

user1=str(input('user1请输入您最喜欢的游戏名称:'))
user2=str(input('user2请输入您最喜欢的游戏名称:'))
game=[]
if user1==user2:game=user1=user2print("user1和user2最喜欢的游戏名称为:%s"%(game))
else:print("user1最喜欢的游戏名称为:%s"%(user1))print("user2最喜欢的游戏名称为:%s"%(user2))


15.上题中两位同学输入 lol和 LOL代表同一游戏,怎么办?

user1=str(input('user1请输入您最喜欢的游戏名称:'))
user2=str(input('user2请输入您最喜欢的游戏名称:'))
game=[]
user3=user1.upper()
user4=user2.upper()
if user3==user4:game=user3=user4print("user1和user2最喜欢的游戏名称为:%s"%(game))
else:print("user1最喜欢的游戏名称为:%s"%(user1))print("user2最喜欢的游戏名称为:%s"%(user2))


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

datetimes=input("请输入日期:格式如下:xx/xx/xx:")
dt1=datetimes.split("/")
print("您输入的时间为:%s"%(dt1))
dt2="{}年-{}月-{}日".format(dt1[0],int(dt1[1]),int(dt1[2]))
print("转换后的日期格式为:%s"%(dt2))


17.接收用户输入的字符串,将其中的字符进行排序(升
序),并以逆序的顺序输出,“cabed”→"abcde"→“edcba”。

en=str(input("请输入英文:"))
ls=list(en)
print("转换后的顺序为:%s"%(ls))
ls.sort()
en1=''.join(ls)
en3=en1[::-1]
ls.reverse()
print("输出的顺序为:%s"%(en1))
print("输出的顺序为:%s"%(en3))


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

en=str(input("请输入英文:"))
en1=en.split(" ")
en2=en1[::-1]
en1.reverse()
print('倒序后输出为:{}'.format(en1))
en3=" "
for i in range(len(en2)):en3+=(en2[i]+" ")
print('倒序后输出为:{}'.format(en3))


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("&")]))


20.有个字符串数组,存储了10个书名,书名有长有短,现
在将他们统一处理,若书名长度大于10,则截取长度8的
子串并且最后添加“…”,加一个竖线后输出作者的名字。

ls=["西游记","三国演义","水浒传","红楼梦","LOL","CF","啊啊啊啊啊啊啊啊啊啊啊啊啊啊","高数","面向对象程序设计语言py","聊斋"]
dir={"西游记":"123","三国演义":"123","水浒传":"123","红楼梦":"123","LOL":"123","CF":"123","啊啊啊啊啊啊啊啊啊啊啊啊啊啊":"123","高数":"123","面向对象程序设计语言py":"123","聊斋":"123"}
for i in range(0,len(ls)):s=ls[i]if len(s)>10:s = s[0:8]+"...|"+str(dir[ls[i]])ls[i]=s
print(ls)


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

user=str(input("请输入一句话并且带呵:"))
ls=[]
for i in range(0,len(user)):if user[i]=="呵":ls.append(i)
print("该句中所有呵的位置为:%s"%(ls))


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

user=input("请输入一句话并且带呵呵:")
ls=[]
for i in range(0,len(user)-1):if user[i]=="呵" and user[i+1] =="呵":ls.append(i)
print("该句中所有呵呵的位置为:{}".format(ls))


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

user = input("请输入一句话:")
print("替换后的句子为:{}".format(user.replace("邪恶","**")))


24.如何判断一个字符串是否为另一个字符串的子串
find()
index()
双层循环完成
??

ls1=str(input("请输入字符串:"))
ls2=str(input("请输入字符串:"))
def find_zfc(ls1,ls2):if ls1.find(ls2) >= 0:print(f"{ls2}是{ls1}的子串")else:print("不是字串")
find_zfc(ls1,ls2)


25.如何验证一个字符串中的每一个字符均在另一个字符串
中出现过
双层循环

ls1=str(input("请输入字符串ls1:"))
ls2=str(input("请输入需要判断的字符串ls2:"))
def find_zfc(ls1):list_ls = list(ls1)for index in range(0,len(ls1)):for i in range(0,len(list_ls)):if ls1[index] == list_ls[i]:print(f"{ls1[index]}存在{ls1}中")else:pass
find_zfc(ls1)


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

import random
import string
s=string.ascii_letters
s1=""
for i in range(1,10):s1+=random.choice(s)
print("无数字的全字母的字符串为:%s"%(s1))


27.如何随机生成带数字和字母的字符串

import random
import string
s=string.ascii_letters + string.digits
s1=""
for i in range(1,10):s1+=random.choice(s)
print("带数字和字母的字符串为:%s"%(s1))


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

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


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

user=str(input("请输入字符串:"))
s1 = user.lower()
ls = list(s1)
ls.sort()
s2  = " "
for i in range(0,len(ls)):s2 += ls[i]
print("字符串的排序为:%s"%(s2))

30.判断一个字符是否是回文字符串(面试题)
“1234567654321”
“上海自来水来自海上”

s = input('请输入一个字符串:')
if not s:print('请不要输入空字符串!')s = input('请重新输入一个字符串:')
a = reversed(list(s))
if list(a) == list(s):print('您所输入的字符串是回文')
else:print('您所输入的字符串不是回文')


31.磁盘遍历

import os
from os import pathdef scanner_file(url):"""指定path路径,遍历该路径下所有文件和文件夹将所有文件都打印显示出来(显示绝对路径)"""dir_list = os.listdir(url)for filename in dir_list:# real_url = url + os.sep + filenamereal_url = path.join(url, filename)if path.isfile(real_url):print(path.abspath(real_url)) and real_url.endswith(".py")elif path.isdir(real_url):scanner_file(real_url)
if __name__ == '__main__':scanner_file("E:/")

python第六七天作业相关推荐

  1. python 学习第七讲作业 2020-12-29

    作业: 代码: flag = True flag2 = True while flag:str1 = input('最近学习了吗?yes/no:')# 对输入结果进行判断if str1 =='yes' ...

  2. python学习第七讲 作业2##2020-12-29

    作业 代码 # 作业1 import random def randint():N = input('输入N个1-1000之间的随机整数:N=')a = list()for i in range(in ...

  3. 2021年春季学期-信号与系统-第七次作业参考答案-第六小题

    本文是 2021年春季学期-信号与系统-第七次作业参考答案 的小题的参考答案. ▌第六小题 ▌ 6.已知调幅信号为:x(t)=(1+1.2cos⁡Ωmt)⋅cos⁡ωct,ωc=4Ωmx\left( ...

  4. Python第六周作业

    Python第六周作业 1. 正则表达式的点星匹配 2. 计算函数曲线与x轴包围的面积 3. 哥德巴赫猜想 4. 鸡兔同笼B 5. 与7无关的数 6. 完美立方数 7. 高次方程求根 8. 在终端输出 ...

  5. Python第七次作业

    Python第七次作业 参考书目:<Python编程从入门到实践> 2018/03/29 8-1.消息 :编写一个名为display_message()的函数,它打印一个句子,指出你在本章 ...

  6. 老男孩python第六期

    01 python s6 day7 上节回顾 02 python s6 day7 SNMP使用 03 python s6 day7 大型监控架构讲解 04 python s6 day7 Redis使用 ...

  7. 作业3(大作业):python数据分析与应用大作业,对用户用电量数据进行数据处理,包括数据转置、异常数据识别和处理、统计基本统计量(包括峰度、偏度)、按日/周(求和)差分、5%分位数等

    Python数据分析与应用大作业 使用学习过的知识(Numpy数值分析基础.Matplotlib数据可视化基础.Pandas统计分析基础),对data.csv用户用户用电量数据进行相关处理,其中数据中 ...

  8. Python全栈最全学习之路-Python基础(七)

    面向对象初级 一.面向对象介绍 思考一:在之前学习的基础上,已经能够处理实现很多功能,比如我们可以定义一个关于人相关的内容,但是如果要表示很多人该怎么办呢? 加粗样式面向对象介绍 name = '不动 ...

  9. c语言第七章作业,C语言学习第七章

    今天开始学习指针,指针在C语言中具有很重要的地位,按照老师所说,学C学不好指针跟没学一样,可见指针在C语言中的重要地位.废话不多说,首先我们先要知道什么是指针. 指针:指针是一个变量,它存储另一个对象 ...

最新文章

  1. BZOJ 2959: 长跑 解题报告
  2. mysql having实例_Mysql必读mysql group by having 实例代码
  3. 使用jpcap获取网卡硬件
  4. 让你IDA Pro 快速上手使用
  5. _declspec(naked) 使用
  6. linux c绑定cpu_Linux内核路径优化之多核心平台TCP优化
  7. python高效编程15个利器_15个Python库,让你学习编程更轻松!
  8. 实现 消息提醒图标_Mac 上自带的「提醒事项」千万别错过
  9. as3 字符处理函数
  10. Flutter实战一Flutter聊天应用(三)
  11. 5G 手机的“高端”战事
  12. 详解Python的装饰器
  13. 跨境电商erp系统一套多少钱,电商erp系统多少钱一年
  14. 密码领域专用语言 ZUC算法
  15. Steam注册遇到CAPTCHA问题,一直注册不了,一个简单的注册办法
  16. java 定时发送心跳_RxJava2.0第五篇 interval 定时任务(心跳包)
  17. jq实现标签单选、多选功能
  18. 【视频分享】尚学堂---数据结构和算法
  19. JDBC的操作步骤和实例
  20. 微信小程序基础而重要语法整理总结(数据绑定、运算表达式、循环渲染、条件渲染、事件绑定(传参))

热门文章

  1. charles为什么只能运行30分钟_charles使用问题汇总
  2. python中的各种作用域
  3. 数据结构与基础算法-环形队列
  4. Linux Suse 11系统下的NFS配置
  5. 微信小程序日历(公历)
  6. python量化交易神器tushare(1)——tushare初体验及pandas使用
  7. IDENTITY属性的使用详解
  8. nacos集群搭建并配置nginx负载均衡
  9. 八千字复习一下天线与电磁波
  10. 使用caffe中的imagenet对自己的图片进行分类训练