python第四周作业

做一个用户管理系统:

实现用户注册

登录

密码加密

发表文章

查寻自己文章

修改文章

修改密码

退出系统

#用户管理系统
print("*"*10)
print("用户管理系统")
print("1.用户注册")
print("2.用户登录")
print("3.密码加密")
print("4.发表文章")
print("5.查询自己文章")
print("6.修改文章")
print("7.修改密码")
print("8.推出系统")
print("*"*10)

print("请输入数字:")
num = int(input(""))
if num == 1:
    print("用户注册")
elif num == 2:
    print("用户登录")
elif num == 3:
    print("密码加密")
elif num == 4:
    print("发表文章")

爬楼梯问题

#
def func(n):
    if n <3:
            return n
    a,b,temp =1,2,0
    for i in range(3,n+1):
        temp = a+b
        a = b
        b = temp
    return temp

print(func(4))

汉诺塔

#汉诺塔
def hanoi(n,a,b,c):  #定义汉诺塔函数,n是参数,a,b,c是三根柱
   if n == 1:
        print(a,'-->',c,'',n)#直接将a柱上的圆盘移动到c柱上
   else:
       hanoi(n-1,a,c,b)#递归将a柱最上方的n-1个盘子落在b
       print(a,'-->',c,'',n)# 输出将A柱上的圆盘移动到C柱上,也就是将A柱的最小面盘子落在C柱
       hanoi(n - 1, b, a, c)  # 递归将B柱上的n-1个盘子,落在C柱

hanoi(3,'a','b','c')               #调用函数

不死兔子

#不死兔子
def demo(num):
    if num == 1 or num ==2:
        return 1
    else:
        return demo(num-1)+demo(num-2)

print(demo(6))

作业(选做题):

某个人进入如下一个棋盘中,要求从左上角开始走,

最后从右下角出来(要求只能前进,不能后退),

问题:共有多少种走法?

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 z(a):
    if a is None:
        return 0
    if len(a) == 1 and len(a[0]) == 1:
        return 1
    for i in range(len(a[0])):
        a[0][i] = 1
    for i in range(len(a)):
        a[i][0] = 1
    for i in range(1, len(a)):
        for j in range(1, len(a[0])):
            a[i][j] = a[i - 1][j] + a[i][j - 1]
    return a[len(a) - 1][len(a[0]) - 1]

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],
    ]
z(ls)
print(f"共有{z(ls)}种走法")

拓展:自己查找资料,实现读取和写入Excel数据

从excel读取

from xlrd import open_workbook

if __name__ == "__main__":
    xls_file = 'file.xls'
    xls = open_workbook(xls_file) # 打开 excel 文件
    sheet = xls.sheet_by_index(0) # 通过索引获取第 1 个表格中的内容,一个 excel 文件可能会包含多个表格
    col1 = sheet.col_values(0) # 通过索引获取表格中第 1 列的内容
    row1 = sheet.row_values(0) # 通过索引获取表格中第 1 行的内容
    ele1 = sheet.cell_value(1,1) # 通过索引获取表格中第 2 行第 2 列的值
    # ele2 = sheet.cell(1,1).value # 通过索引获取表格中第 2 行第 2 列的值,与上一行结果一样
    print(col1)
    print(row1)
    print(ele1)
  

写入excel

import  xlwt

if __name__ == "__main__":
    
    wb = xlwt.Workbook(encoding='utf-8',style_compression=0)
    ws = wb.add_sheet('sheet1',cell_overwrite_ok=True)
    ws.write(5,5,'你好')
    wb.save('写入文件.xls')

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Believe(@.@)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值