张冯的小能豆 发表于 2020-3-17 16:08:15

关于密码问题,大家觉着我这样写可以不,请君赐教

本帖最后由 一个账号 于 2020-3-17 16:37 编辑

mystery = '芝麻开门!'
secret = input('请输入密码:')
time = 4
while secret != mystery:
    while'*' in secret:
      print('密码中不能含有"*"号!您还有 '+str(time)+' 次机会!', end = ' ')
      secret = input('请输入密码:')

    time = time - 1
    if time < 0:
      print('您已经用光了')
      break
    secret = input('密码输入错误!您还有'+ str(time) +'次机会! 请输入密码:')


if secret == mystery:
    print('密码正确,进入程序......')

墨羽岚 发表于 2020-3-17 16:17:05

还不错{:10_257:}
可以稍微改进一点的地方是在重新输入那里"!"后面加个"\n"看上去更加美观(){:10_256:}
最后密码是password,mystery是神秘{:10_256:}

xinhua202002 发表于 2020-3-17 16:19:25

本帖最后由 xinhua202002 于 2020-3-17 16:25 编辑

写得不错
帮你修改了一下
password = '芝麻开门'
secret = 0
time = 5
while secret != password:
      time -= 1
      secret = input('请输入密码:')
      if secret != password:
                print('密码错误!')
                print('你还有',time,'次机会')
      else:
                print('密码正确!')
      if time == 0:
                break
password = '芝麻开门'
secret = 0
time = 5
while secret != password:
      time -= 1
      secret = input('请输入密码:')
      if secret != password:
                print('密码错误!')
                print('你还有',time,'次机会')
      else:
                print('密码正确!')
      if '*' in secret:
                print('密码中不能有"*"号')
      if time == 0:
                break

xinhua202002 发表于 2020-3-17 16:26:15

如何正确地发代码、上传图片和附件?
https://fishc.com.cn/thread-52272-1-1.html
(出处: 鱼C论坛)

Mike_python小 发表于 2020-3-17 16:26:30

from tkinter import *
from tkinter import messagebox as g
import random
from PIL import Image, ImageTk

root = Tk()
root.title('登录界面')
root.geometry('600x600')

m = ''
y = ''

image1 = Image.open('F:\\秦俊芃的学习文件夹\\图片\\to.png')
image2 = ImageTk.PhotoImage(image1)
to = Label(root, image=image2)
to.place(x=180, y=300)

def deng():
    y1 = b.get()
    m1 = b1.get()
    if m1 == m and y1 == y:
      def bankab():
            def yin_hang_bton():
                ka_mima_entry_g = ka_mima_entry.get()
                ka_mima_entry1_g = ka_mima_entry1.get()
                if ka_mima_entry_g == ka_mima_entry1_g:
                  g.showinfo('成功', '设置成功')
                  ka_mima_str = ka_mima_entry.grt()
                  yin.destroy()
                else:
                  g.showerror('错误', '两次的密码不一样')

            yin = Toplevel()
            yin.geometry('700x600')
            yin.title('办卡')

            ka1 = str(random.randint(1,9))
            ka2 = str(random.randint(1,9))
            ka3 = str(random.randint(1,9))
            ka_hao = (ka1+ka2+ka3)
            ka_hao = str(ka_hao)

            imagea = Image.open('F:\\秦俊芃的学习文件夹\\图片\\ka.png')
            image1a = ImageTk.PhotoImage(imagea)
            to1a = Label(window, image=image1a)
            to1a.place(x=500, y=500)

            print_kahao = Label(yin, text=('你的卡号是:', ka_hao), font=('宋体',25)).pack()

            ka_mima = Label(yin, text=' 请输入密码 ', font=('宋体',25))
            ka_mima.place(x=0, y=60)

            ka_mima_entry = Entry(yin, bg='yellow', fg='blue', font=('宋体',25))
            ka_mima_entry.place(x=250, y=60)

            ka_mima1 = Label(yin, text='请再次输入密码', font=('宋体',25))
            ka_mima1.place(x=0, y=100)

            ka_mima_entry1 = Entry(yin, bg='yellow', fg='blue', font=('宋体',25))
            ka_mima_entry1.place(x=250, y=100)

            ka_btn = Button(yin, text='完成', fg='red', command=yin_hang_bton,font=('宋体',25))
            ka_btn.place(x=300, y=300)

      g.showinfo('成功', '登陆成功')
      root.destroy()      
      window = Tk()
      window.geometry('600x600')
      window.title('主页面')

      image = Image.open('F:\\秦俊芃的学习文件夹\\图片\\kai.png')
      image1 = ImageTk.PhotoImage(image)
      to1 = Label(window, image=image1)
      to1.pack()

      banka = Button(window, text='办卡', font=('微软雅黑', 20),fg='yellow', bg='blue', command=bankab).place(x=100, y=300)



      root.mainloop()
    else:
      g.showerror('错误', '密码或用户名错误')

def mimaq():
    ag = aa.get()
    a1g = aa1.get()
    a2g = aa2.get()
    a3g = aa3.get()
    if ag == a1g and a2g == a3g:
      global m, y
      y = ag
      m = a3g
      g.showinfo('成功', '修改成功')
      mima.destroy()
    else:
      g.showerror('错误', '密码或用户名两次输入的不一致')

def wangji():
    global aa, aa1, aa2, aa3, mima
   
    mima = Toplevel()
    mima.title('注册')
    mima.geometry('700x600')

    Label(mima, text='请输入新用户名', fg='blue',font=('宋体', 25)).grid(row=0, column=0)
    aa = Entry(mima, bg='yellow', fg='blue', font=('宋体', 25))
    aa.grid(row=0, column=1)

    Label(mima, text = '请再次输入用户名', fg='blue', font=('宋体', 25)).grid(row=1, column=0)
    aa1 = Entry(mima, bg='yellow', fg='blue', font=('宋体', 25))
    aa1.grid(row=1, column=1)

    Label(mima, text = '请输入新密码', fg='blue', font=('宋体', 25)).grid(row=2, column=0)
    aa2 = Entry(mima, bg='yellow', fg='blue', font=('宋体', 25))
    aa2.grid(row=2, column=1)

    Label(mima, text = '请再次输入密码', fg='blue', font=('宋体', 25)).grid(row=3, column=0)
    aa3 = Entry(mima, bg='yellow', fg='blue', font=('宋体', 25))
    aa3.grid(row=3, column=1)

    cc = Button(mima, text='确定', fg='red', font=('微软雅黑',30), command = mimaq)
    cc.place(x=300, y=180)


a = Label(root, text='用户名', fg='blue', font=('宋体', 30))
a.grid(row=0, column=0)

b = Entry(root, bg='yellow', fg='blue', font=('宋体', 30))
b.grid(row=0, column=1)

a1 = Label(root, text='密码', fg='blue', font=('宋体', 30))
a1.grid(row=1, column=0)

b1 = Entry(root, bg='yellow', fg='blue', font=('宋体', 30),show='*')
b1.grid(row=1, column=1)

c1 = Button(text='登录', bg='yellow', fg='blue',\
    command=deng, font=('微软雅黑',30))
c1.place(x=150,y=100)

c2 = Button(text='忘记密码', bg='yellow', fg='blue',\
    command=wangji, font=('微软雅黑',30))
c2.place(x=300,y=100)
root.mainloop()

我这才好

xinhua202002 发表于 2020-3-17 16:28:33

Mike_python小 发表于 2020-3-17 16:26
我这才好

麻烦把图片发上来

xinhua202002 发表于 2020-3-17 16:29:53

Mike_python小 发表于 2020-3-17 16:26
我这才好

F:\\秦俊芃的学习文件夹\\图片\\to.png

墨羽岚 发表于 2020-3-17 16:37:14

Mike_python小 发表于 2020-3-17 16:26
我这才好

同学你真名出来了{:10_330:}

Mike_python小 发表于 2020-3-17 16:47:16

墨羽岚 发表于 2020-3-17 16:37
同学你真名出来了

……啊啊啊

Mike_python小 发表于 2020-3-17 16:48:07

xinhua202002 发表于 2020-3-17 16:28
麻烦把图片发上来

https://imgchr.com/i/8U8cDI

Mike_python小 发表于 2020-3-17 16:54:07

xinhua202002 发表于 2020-3-17 16:28
麻烦把图片发上来

正在审核中……

张冯的小能豆 发表于 2020-3-17 19:57:24

xinhua202002 发表于 2020-3-17 16:19
写得不错
帮你修改了一下

超棒的{:5_109:}

张冯的小能豆 发表于 2020-3-17 20:00:31

墨羽岚 发表于 2020-3-17 16:17
还不错
可以稍微改进一点的地方是在重新输入那里"!"后面加个"\n"看上去更加美观()
...

谢谢哦{:10_297:}
看上去的确会更美观,哈哈哈以后看来还要注意{:10_332:}
还是password更显专业嘿嘿

张冯的小能豆 发表于 2020-3-17 20:07:31

xinhua202002 发表于 2020-3-17 16:19
写得不错
帮你修改了一下

如果这样写的话,是不是就代表着不管密码中有没'*'都会导致次数减一(题目要求的是如果密码中有'*',次数不减少),可不可以把
if '*' in secret:
                print('密码中不能有"*"号')
提到time - = 1 的前面呢{:7_145:}

xinhua202002 发表于 2020-3-19 22:13:57

张冯的小能豆 发表于 2020-3-17 20:07
如果这样写的话,是不是就代表着不管密码中有没'*'都会导致次数减一(题目要求的是如果密码中有'*',次数 ...

password = '芝麻开门'
secret = 0
time = 5
while secret != password:
      time -= 1
      secret = input('请输入密码:')
      if secret != password:
                print('密码错误!')
                print('你还有',time,'次机会')
      else:
                print('密码正确!')
      if '*' in secret:
                print('密码中不能有"*"号')
                time += 1
      if time == 0:
                break

抱歉!最近几天没认真看

bg0da 发表于 2020-3-19 22:54:13

Mike_python小 发表于 2020-3-17 16:26
我这才好

为何你们的代码我运行都报错?

Mike_python小 发表于 2020-3-20 08:09:11

bg0da 发表于 2020-3-19 22:54
为何你们的代码我运行都报错?

报什么错说上来是不是ImportError???或者你没有我的图片   你学过tkinter吗?

Mike_python小 发表于 2020-3-20 08:10:12

xinhua202002 发表于 2020-3-17 16:28
麻烦把图片发上来

那些图片随便一个就行
页: [1]
查看完整版本: 关于密码问题,大家觉着我这样写可以不,请君赐教