文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python流程控制语句案例练习

2023-01-31 00:59

关注

   最近玩python,为了更好的学习其中的流程控制语句,自己写了一个查询员工信息和更新信息的脚本,此脚本仅供练习使用。大拿可绕行!


#!/usr/bin/env python
import sys
import os
os.system('clear')
mess = '''
             \033[;35m ID   :%s\033[0m
             \033[;35m Name :%s\033[0m
             \033[;35m Dep  :%s\033[0m
'''
info = '''
                     \033[;32m+++++++++++++++++++++++++++++++++++++++++++\033[0m
                     \033[;32m++  Welcome to staffs infomation system  ++\033[0m
                     \033[;32m+-----------------------------------------+\033[0m
                     \033[;32m+                                         +\033[0m
                     \033[;32m+       S: search staffs infomation       +\033[0m
                     \033[;32m+       U: update staffs infomation       +\033[0m
                                 \033[;32m+       Q: quit                           +\033[0m
                                 \033[;32m+                                         +\033[0m
                     \033[;32m+++++++++++++++++++++++++++++++++++++++++++\033[0m
'''
info2 = '''
                                 \033[;32m+++++++++++++++++++++++++++++++++++++++++++\033[0m
                                 \033[;32m+       A: Add staffs infomation          +\033[0m
                                 \033[;32m+       D: Del staffs infomation          +\033[0m
                                 \033[;32m+       Q: quit                           +\033[0m
                                 \033[;32m+++++++++++++++++++++++++++++++++++++++++++\033[0m
'''
while True:
    username = raw_input('\033[;32mPlease input your name: \033[0m').strip()
    passwd = raw_input('\033[;32mPlease input password: \033[0m').strip()
    if username != 'zhaohh' or passwd != '111111':
        print ('\033[;31mYour username not exist or your password wrong!\033[0m')
        continue
    else:
        print '\033[;32mHello zhaohh,Welcome!\033[0m'
        break
os.system('sleep 2')
os.system('clear')
print info
while True:
    user_input = raw_input("\033[;32mPlease select (S,U,default Q): \033[0m").strip()
# search staffs infomation
    if user_input == "s" or user_input == "S":
        staff_list = open("file.txt","rw")
        c = staff_list.readlines()
        staff_list.close()
        while True:
            inputs = raw_input('\033[;32mPlease input ID or name or dep: \033[0m').strip()
            for line in c:
                field = line.split()
                if inputs in field:
                    print mess %(field[0],field[1],field[2])
                    break
            else:
                juge = raw_input('\033[;31mCan not found information! Continue? yes/no. \033[0m').strip()
                if juge == 'yes' or juge == 'y':
                    continue
                else:break
            juge = raw_input('\033[;32mContinue search ? yes/no. \033[0m')
            if juge == 'yes' or juge == 'y':
                continue
            elif juge == 'no' or juge == 'n' or juge == '':
                sys.exit()
            break
        break
# add staffs infomation
    elif user_input == "u" or user_input == "U":
        print info2
        while True:
            update_input = raw_input('\033[;32mPlease select (A,D,default Q): \033[0m').strip()
            if update_input == "a" or update_input == "A":
                info_input = raw_input("\033[;32mPlease input user infomation: \033[0m")
                staff_list = open("file.txt","a")
                staff_list.write(info_input + '\n')
                staff_list.close()
                juge = raw_input('\033[;32mUpdate successful! Continue search ? yes/no. \033[0m')
                if juge == 'yes' or juge == 'y':
                    continue
                elif juge == 'no' or juge == 'n' or juge == '':
                    sys.exit()
# delete staffs infomation
            elif update_input == "d" or update_input == "D":
                inputs = raw_input('\033[;32mPlease input ID or name or dep: \033[0m')
                f = open("newfile.txt","a")
                staff_list = open("file.txt","rw")
                for line in staff_list.readlines():
                    for field in line.split():
                        if inputs == field:
                            print '\033[;32mDelete successful!\033[0m'
                            break
                    else:
                        f.write(line)
                staff_list.close()
                f.close()
                os.remove('file.txt')
                os.rename('newfile.txt','file.txt')
                juge = raw_input('\033[;32mContinue? yes/no. \033[0m')
                if juge == 'yes' or juge == 'y':
                    continue
                elif juge == 'no' or juge == 'n' or juge == '':
                    sys.exit()
            elif update_input == "q" or update_input == "Q" or update_input == "":
                sys.exit()
            else:
                print "\033[;31m Input error,try agin!\033[0m"
                continue
    elif user_input == "q" or user_input == "Q" or user_input == "":
        sys.exit()
    else:
        print "\033[;31m Input error,try agin!\033[0m"
        continue


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯