python第三次作业

文章包含多个Python编程练习,如解决汉诺塔问题的递归函数,找到10000以内能被5或6整除但不能同时被二者整除的数,计算列表偶数下标元素之和,字符串长度计算,比较两个字符串是否代表同一游戏(不区分大小写),日期格式转换,字符串排序及逆序输出,查找特定子串位置,以及替换特定词汇等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 汉诺塔

def hanoi(A, B, C, n):
    if n == 1:
        print(A, '->', C)
    else:
        hanoi(A, C, B, n - 1)
        print(A, '->', C)
        hanoi(B, A, C, n - 1)
hanoi('塔1','塔2','塔3',64)

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

#找出10000以内能被5或6整除,但不能被两者同时整除的数(函数)
def func():
    for i in range(1,10000):
        if (i % 5) == 0 or (i % 6) == 0:
            if (i % 5) == 0 and (i % 6) == 0:
                continue
            print(i)


print(func())

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

#写一个方法,计算列表所有偶数下标元素的和(注意返回值)
def ls_conut_e(ls1):
    count = 0
    i = 0
    while i < len(ls1):
        count += ls1[i]
        i += 2

    print(count)
ls1 = [1,2,3,4,4,8,2]
ls_conut_e(ls1)

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

#随意输入你心中想到的一个书名,然后输出它的字符串长度。 (len()属性:可以得字符串的长度)
s = input("你喜欢的书名:")
print("{}的书名长度是{}".format(s,len(s)))

5.两个学员输入各自最喜欢的游戏名称,判断是否一致,如

果相等,则输出你们俩喜欢相同的游戏;如果不相同,则输

出你们俩喜欢不相同的游戏。

game1=input('第一人喜欢的游戏:')
game2=input('第二人喜欢的游戏:')
if game1==game2:
    print('你俩喜欢相同的游戏')
else:
    print('你俩喜欢不相同的游戏')

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

#上题中两位同学输入 lol和 LOL代表同一游戏,怎么办?
game1=input('第一人喜欢的游戏:')
game2=input('第二人喜欢的游戏:')
game1=game1.upper()
game2=game2.upper()
if game1==game2:
    print('你俩喜欢相同的游戏')
else:
    print('你俩喜欢不相同的游戏')

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

#让用户输入一个日期格式如“2008/08/08”,将 输入的日期格式转换为“2008年-8月-8日”。
time = input("请输入日期:")
S = time.split("/")
timex = "{}年-{}月-{}日".format(S[0], int(S[1]), int(S[2]))
print(timex)

9.接收用户输入的字符串,将其中的字符进行排序(升

序),并以逆序的顺序输出,“cabed”→"abcde"→“edcba”。

s='c,a,b,e,d'
ls = list(s)
ls.sort()
ls.reverse()
s = ""
for i in range(0,len(ls)):
    s += ls[i]
print(s)

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

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

11.让用户输入一句话,判断这句话中有没有邪恶,如果有邪

恶就替换成这种形式然后输出,如:“老牛很邪恶”,输出后变

成”老牛很**”;

while True:
    name = input('请输入内容:')
    if "姓名" in name or "邪恶" in name:
        v = name.replace('姓名', '*****')
        v1 = v.replace('邪恶', '*****')
        print(v1)
        exit()
    else:
        print(name)

12.判断一个字符是否是回文字符串(面试题)

"1234567654321"

"上海自来水来自海上"

# s = '上海自来水来自海上'
# if s == s[::-1]:
#     print('yes')
# else:
#     print('no')
s = str(input('请输入一个字符串:'))
s1 = s[0:len(s)//2]
s2 = s[-1:len(s)//2:-1]
if s1 == s2:
    print('是回文')
else:
    print('不是回文')

13.如何判断一个字符串是否为另一个字符串的子串

#如何判断一个字符串是否为另一个字符串的子串
a = "agwrgskdkfskwgw2"
print( "a" in a )      #判断"a"是否为字符串变量a的字串
print( "w2" in a )    #判断"agw"是否为字符串变量a的字串
print( "ab" in a )     #判断"ab"是否为字符串变量a的字串

### Python 第六次作业题目及要求 #### 一、课程复习与巩固 为了帮助学生更好地掌握所学的知识,第六次作业通常会涉及之前学习过的重要概念和技术。这可能包括但不限于函数定义、模块导入以及面向对象编程的基础。 对于具体实现方面,在此提供一个基于面向对象的学生管理系统的简化版本作为例子[^3]: ```python class Student: def __init__(self, name, age, grade): self.name = name self.age = age self.grade = grade def display_student(self): return f'Name: {self.name}, Age: {self.age}, Grade: {self.grade}' students_list = [] def add_student(): student_name = input('Enter the new student\'s name:') student_age = int(input('Enter the new student\'s age:')) student_grade = float(input('Enter the new student\'s grade:')) students_list.append(Student(student_name,student_age,student_grade)) def list_students(): for i in range(len(students_list)): print(f'Student No.{i+1}:',end=' ') print(students_list[i].display_student()) add_student() list_students() ``` 上述代码展示了如何创建`Student`类并利用它来进行简单的增删改查操作。当然实际应用中还需要考虑更多细节比如异常处理等。 #### 二、综合实践——开发小型应用程序 鼓励同学们尝试构建一个小规模的应用程序来解决现实生活中的某个问题或模拟某种场景。例如可以参考纸牌游戏的设计思路[^2],通过编写Python脚本来完成特定功能的游戏逻辑;也可以继续深化前面提到的学生管理系统,增加更多的交互性和实用性特性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值