zoukankan      html  css  js  c++  java
  • 初识python

    实现用户登入验证

    输入

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    # 将用户输入的内容赋值给 name 变量
    name = raw_input("请输入用户名:")
    
    # 打印输入的内容
    print name

    输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    import getpass
    
    # 将用户输入的内容赋值给 name 变量
    pwd = getpass.getpass("请输入密码:")
    
    # 打印输入的内容
    print pwd

    需求、用户登陆验证

    #!/usr/bin/env python
    # -*- coding: encoding -*-
    
    # 提示输入用户名和密码
    
    # 验证用户名和密码
    #     如果错误,则输出用户名或密码错误
    #     如果成功,则输出 欢迎,XXX!
    
    
    import getpass
    
    
    name = raw_input('请输入用户名:')
    pwd = getpass.getpass('请输入密码:')
    
    if name == "aa" and pwd == "cmd":
        print "欢迎,aa!"
    else:
        print "用户名和密码错误"

    如果用户输入错了,即不能重新输入,如果能重新输入,我们可以用到while循环,并且记录用户输入出错的次数,如果超过三次,则提示不能再次输入了,如果三次内登入成功,则提示登入成功

    
    # 记录用户出错的次数,默认为0
    number = 0
    right_name = "test"
    right_passwd = "111111"
    # 因为用户输入出错的机会不能超过三次,所以我们可以设为<3
    while number < 3:
        name = input("请输入用户名:")
        pwd = input('请输入密码:')
        if name == right_name and pwd == right_passwd:
            print("登入成功了")
            break
        else:
            print("请输入正确的用户名或密码")
            number += 1
    else:
        print("已经试过了三次,请稍后再试")

    元素分类

    有如下值集合 [11,22,33,44,55,66,77,88,99,90…],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
    即: {‘k1’: 大于66的所有值, ‘k2’: 小于66的所有值}

    dic = {} #定义一个字典
    ll = [11, 22, 33, 44, 55, 66, 77, 88, 90]
    
    for i in ll:
        if i >66:
        #判断集合中大于66的,则判定第一个key是否存在,存在追加,没有则赋值
                if 'k1' in dic.keys():
                                        dic['k1'].append(i)
                else:
                    dic['k1'] = [i, ]
        else:
                if 'k2' in dic.keys():
                   dic['k2'].append(i)
                else:
                    dic['k2'] = [i, ]
    
    print(dic)

    购物车

    功能要求:
    - 要求用户输入总资产,例如:2000
    - 显示商品列表,让用户根据序号选择商品,加入购物车
    - 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。

    #商品列表
    goods = [
        {"name": "电脑","price": 100},
        {"name": "游艇", "price": 900},
        {"name": "鼠标","price": 20}
    ]
    all_ass = input("总资产")
    all_ass = int(all_ass)#转化为int类型
    shop_cars = {}# 定义为{"price": item["price"], "num": 1}
    while True:
        for i in goods:
            print(i)
        i2 = input("请输入你要购买的商品,结算请输入y/Y")
        if i2.lower() == "y":
            break
        for item in goods:
            if i2 == item["name"]:
                if i2 in shop_cars.keys():
                    shop_cars[i2]["num"] += 1
                else:
                    shop_cars[i2] = {"price": item["price"], "num": 1}
    
    print(shop_cars)
    all_sum = 0
    for i,k in shop_cars:
        print(i,k["price"])
        # print(v["price"])
        # all_sum += v["price"] * v["num"]
    
    if all_sum > all_ass:
        print("资产不够")
    else:
        print("资产够了")

    打印九九乘法表

    for x in range(1,10):
           for y in range(1,x+1):
                  print(x,"*",y,"=",x*y,' ',end='')#end=''不换行
           print() # 换行

    二分法查找

    data = [1, 3, 6, 7, 9, 12, 14, 16, 17, 18, 20, 21, 22, 23, 30, 32, 33, 35]
    def binary_search(dataset,findNum):
        print(dataset)
        if len(dataset) > 1:
            mid = int(len(dataset)/2)
            if dataset[mid] == findNum:
                print("找到数字了",findNum)
            elif dataset[mid] > findNum:
                print("数字在左边")
                return binary_search(dataset[0:mid],findNum)
            else:
                print("数字在右边")
                return binary_search(dataset[mid+1:],findNum)
        else:
            if dataset[0] == findNum:
                print("数字找到了",findNum)
            else:
                print("找不到了,数字不在列表里面")
    binary_search(data,33)

    冒泡排序

    data = [1, 14, 16, 17, 18, 20, 21, 3, 6, 7, 9, 112, 22, 23,33, 35, 30, 35 ]
    
    for i in range(len(data)):
        for j in range(len(data[:-1])-i):
            if data[j] > data[j+1]:
                temp = data[j]
                data[j] = data[j+1]
                data[j+1] = temp
    print(data)
  • 相关阅读:
    Qt 配置fakevim
    CentOS安装Ruby组件
    Linux shell 操作 postgresql,并设置crontab任务
    修改win7锁定界面背景
    Ubuntu安装Redis
    Java 向SQL Server插入文件数据
    用VMware vSphere Client客户端登陆vsphere5提示错误
    DD应用实例
    shell初学
    deepin2014.1快捷键
  • 原文地址:https://www.cnblogs.com/flyhgx/p/6367981.html
Copyright © 2011-2022 走看看