#1、写函数,利用递归获取斐波那契数列中的第 10 个数,并将该值返回给调用者。
def rec(a,b,dep=1):
c = a + b
if dep == 10:
return c
return rec(b,c,dep+1) print(rec(5,5)) #2、编写用户登录程序,(读写文本版,可注册用户,修改用户密码)
import os
#注册账号
def zhuce(user,pawd,file):
with open(file, 'r+', encoding='utf-8') as f1:
for line in f1:
if user == line.split(':')[0]:
return False
else:
f1.write(user + ':' + pawd + '\n')
return True
#登录账号
def denglu(user,pawd,file):
with open(file, 'r', encoding='utf-8') as f1:
for line in f1:
if '{}:{}'.format(user,pawd) == ''.join(line).strip():
return True
return False #修改密码
def xiugai(user,pawd,file,new_pawd):
line2 = ''
ret = False
with open(file,'r') as f1,open('fana.bak','w') as f2:
for line in f1:
if '{}:{}'.format(user,pawd) == line.strip():
ret = True
line2 += line.replace(user + ':' + pawd, user + ':' + new_pawd)
else:
line2 +=line
if ret != True:
ret = False
f2.write(line2)
os.remove('fana.txt')
os.rename('fana.bak','fana.txt')
return ret #注销用户
def zhuxiao(user,pawd,file):
line2 = ''
ret = False
with open(file,'r') as f1,open('fana.bak','w') as f2:
for line in f1:
if '{}:{}'.format(user,pawd) == line.strip():
ret = True
else:
line2 += line
if ret != True:
ret = False
f2.write(line2)
os.remove('fana.txt')
os.rename('fana.bak','fana.txt')
return ret def taobao(arg):
file = 'fana.txt'
user = input("请输入用户名:")
pawd = input("请输入密码:")
if arg == 'z':
zhu = zhuce(user,pawd,file)
if zhu == False:
print("用户名已存在")
else:
print('注册成功')
elif arg == 'a':
deng = denglu(user,pawd,file)
if deng:
return '欢迎登陆淘宝!'
else:
print('账号或密码错误')
elif arg == 'x':
new_pawd = input("请输入您的新密码")
xiu = xiugai(user,pawd,file,new_pawd)
if xiu:
print("密码修改成功")
else:
print("账号或密码错误")
elif arg == 'e':
xiao = zhuxiao(user,pawd,file)
if xiao:
print("账号注销成功")
else:
print("账号或密码错误") while True:
jd = input("注册请按:z,登陆请按:a,退出按:q >>")
if jd.lower() == 'z':
taobao('z')
elif jd.lower() == 'a':
ta = taobao('a')
if ta == '欢迎登陆淘宝!':
print('欢迎登陆淘宝!')
se = input('修改密码:x,注销:e >>')
if se == 'x':
print('修改密码前!',end='')
taobao('x')
elif se == 'e':
print('注销账号前!', end='')
taobao('e')
else:
print('请按照提示输入!')
elif jd.lower() == 'q':
print('退出成功')
break
else:
print("请按照提示输入!")

python--第四天练习题的更多相关文章

  1. 简学Python第四章__装饰器、迭代器、列表生成式

    Python第四章__装饰器.迭代器 欢迎加入Linux_Python学习群  群号:478616847 目录: 列表生成式 生成器 迭代器 单层装饰器(无参) 多层装饰器(有参) 冒泡算法 代码开发 ...

  2. Python 基础 四 面向对象杂谈

    Python 基础  四  面向对象杂谈 一.isinstance(obj,cls) 与issubcalss(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls ...

  3. 初学Python(四)——set

    初学Python(四)——set 初学Python,主要整理一些学习到的知识点,这次是set. # -*- coding:utf-8 -*- #先来看数组和set的差别 d=[1,1,2,3,4,5] ...

  4. python 函数“四剑客”的使用和介绍

    python函数四剑客:lambda.map.filter和reduce. 一.lambda(匿名函数) 1. 学习lambda要注意一下几点: lambda语句被用来创建新的函数对象,并且在运行的时 ...

  5. Python第四天 流程控制 if else条件判断 for循环 while循环

    Python第四天   流程控制   if else条件判断   for循环 while循环 目录 Pycharm使用技巧(转载) Python第一天  安装  shell  文件 Python第二天 ...

  6. 初识Python(四)

    一.数字数据类型 Python的数字数据类型用于存储数值,它是不可变的数据类型,这意味着改变数字数据类型,则需要一个新分配的对象: Python支持四种不同的数值类型: 整型(Int):通常被称为是整 ...

  7. 孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数

    孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 不同类型 ...

  8. 孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成

    孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天经过反复折腾,最终基本上算 ...

  9. 孤荷凌寒自学python第四十七天通用跨数据库同一数据库中复制数据表函数

    孤荷凌寒自学python第四十七天通用跨数据库同一数据库中复制数据表函数 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天打算完成的是通用的(至少目 ...

  10. 孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类尝试第一天

     孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类,尝试第一天 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 按上一天的规划,这是根据过去我自学其它编程语 ...

随机推荐

  1. uboot 添加自定义命令

    ref : https://www.cnblogs.com/FREMONT/p/9824226.html 1.添加命令 1.1在common目录下,新建一个cmd_xx.c, 需要添加的命令格式为: ...

  2. AtCoder练习

    1. 3721 Smuggling Marbles 大意: 给定$n+1$节点树, $0$为根节点, 初始在一些节点放一个石子, 然后按顺序进行如下操作. 若$0$节点有石子, 则移入盒子 所有石子移 ...

  3. Array Beauty CodeForces - 1189F (dp,好题)

    大意: 定义$n$元素序列$a$的美丽度为 $\min\limits_{1\le i<j\le n}|a_i-a_j|$. 给定序列$a$, 求$a$的所有长为$k$的子序列的美丽度之和. 记 ...

  4. ORA-07445: exception encountered: core dump [opiaba()+639] [SIGSEGV] [ADDR:0x0] [PC:0x1858C3F] [SI_KERNEL(general_protection)] []

    开发反馈应用无法连接数据库,发现数据库实例崩溃,且数据库为11.2.0.4 单实例. 数据库告警日志发现,数据库崩溃之前出现ORA- ORA-: exception encountered: core ...

  5. Nginx server配置

    项目一般都需要前后端的配置,用二级域名把它区分开:首先在nginx.conf:里面加一句话: http{ #这里面有很多其他的配置 如:gzip FastCGI等等 include vhosts/*. ...

  6. 自动化测试之if __name__ == '__main__'未运行

    自动化测试之if __name__ == '__main__'未运行 添加Count类 calculator.py: class Count: def __init__(self,a,b): self ...

  7. (五)lucene之特定项搜索和查询表达式

    需求:模糊搜索. 前提:  本例中使用lucene 5.3.0 package com.shyroke.lucene; import java.io.File; import java.io.File ...

  8. (十)SpringBoot之web 应用开发-Servlets, Filters, listeners

    一.需求 Web 开发使用 Controller 基本上可以完成大部分需求,但是我们还可能会用到 Servlet. FilterListene 二.案例 2.1 通过注册 ServletRegistr ...

  9. Html Agility Pack 使用 XPath 选择器

    想做一个爬虫程序,以前用的一直使用CSS选择器的html解析插件,最近做的项目想使用 Html Agility Pack 来做解析 Html Agility Pack使用 XPath 和 Linq 来 ...

  10. IO流的部分类简述

    InputStream 类: InputStream 位于 java.io 包中,它是一个抽象类,表示字节输入流,需要定义 InputStream 子类的应用程序必须总是提供返回下一个输入字节的方法 ...