From 5c48bc9cf74ed7f539027ae3d1df8d12096300bf Mon Sep 17 00:00:00 2001 From: Hhhhzh <969247577@qq.com> Date: Mon, 13 Feb 2023 21:15:14 +0800 Subject: [PATCH] FirstSend --- banksystem/.idea/.gitignore | 3 + banksystem/.idea/.name | 1 + banksystem/.idea/bankSystem.iml | 13 ++ .../inspectionProfiles/Project_Default.xml | 22 ++ banksystem/.idea/misc.xml | 4 + banksystem/.idea/modules.xml | 8 + banksystem/__pycache__/admin.cpython-38.pyc | Bin 0 -> 3899 bytes banksystem/__pycache__/atm.cpython-311.pyc | Bin 0 -> 10674 bytes banksystem/__pycache__/atm.cpython-38.pyc | Bin 0 -> 5193 bytes banksystem/__pycache__/card.cpython-311.pyc | Bin 0 -> 891 bytes banksystem/__pycache__/card.cpython-38.pyc | Bin 0 -> 702 bytes banksystem/__pycache__/check.cpython-311.pyc | Bin 0 -> 6086 bytes banksystem/__pycache__/check.cpython-38.pyc | Bin 0 -> 3945 bytes .../readAppendCard.cpython-311.pyc | Bin 0 -> 5135 bytes .../__pycache__/readAppendCard.cpython-38.pyc | Bin 0 -> 2824 bytes banksystem/admin.py | 94 +++++++++ banksystem/atm.py | 190 ++++++++++++++++++ banksystem/card.py | 15 ++ banksystem/cardinfo.txt | 0 banksystem/check.py | 147 ++++++++++++++ banksystem/readAppendCard.py | 65 ++++++ banksystem/银行系统.py | 35 ++++ 22 files changed, 597 insertions(+) create mode 100644 banksystem/.idea/.gitignore create mode 100644 banksystem/.idea/.name create mode 100644 banksystem/.idea/bankSystem.iml create mode 100644 banksystem/.idea/inspectionProfiles/Project_Default.xml create mode 100644 banksystem/.idea/misc.xml create mode 100644 banksystem/.idea/modules.xml create mode 100644 banksystem/__pycache__/admin.cpython-38.pyc create mode 100644 banksystem/__pycache__/atm.cpython-311.pyc create mode 100644 banksystem/__pycache__/atm.cpython-38.pyc create mode 100644 banksystem/__pycache__/card.cpython-311.pyc create mode 100644 banksystem/__pycache__/card.cpython-38.pyc create mode 100644 banksystem/__pycache__/check.cpython-311.pyc create mode 100644 banksystem/__pycache__/check.cpython-38.pyc create mode 100644 banksystem/__pycache__/readAppendCard.cpython-311.pyc create mode 100644 banksystem/__pycache__/readAppendCard.cpython-38.pyc create mode 100644 banksystem/admin.py create mode 100644 banksystem/atm.py create mode 100644 banksystem/card.py create mode 100644 banksystem/cardinfo.txt create mode 100644 banksystem/check.py create mode 100644 banksystem/readAppendCard.py create mode 100644 banksystem/银行系统.py diff --git a/banksystem/.idea/.gitignore b/banksystem/.idea/.gitignore new file mode 100644 index 0000000..359bb53 --- /dev/null +++ b/banksystem/.idea/.gitignore @@ -0,0 +1,3 @@ +# 默认忽略的文件 +/shelf/ +/workspace.xml diff --git a/banksystem/.idea/.name b/banksystem/.idea/.name new file mode 100644 index 0000000..fb6e260 --- /dev/null +++ b/banksystem/.idea/.name @@ -0,0 +1 @@ +银行系统.py \ No newline at end of file diff --git a/banksystem/.idea/bankSystem.iml b/banksystem/.idea/bankSystem.iml new file mode 100644 index 0000000..166d1a6 --- /dev/null +++ b/banksystem/.idea/bankSystem.iml @@ -0,0 +1,13 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/banksystem/.idea/inspectionProfiles/Project_Default.xml b/banksystem/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..deb13da --- /dev/null +++ b/banksystem/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,22 @@ + + + + \ No newline at end of file diff --git a/banksystem/.idea/misc.xml b/banksystem/.idea/misc.xml new file mode 100644 index 0000000..a6f120b --- /dev/null +++ b/banksystem/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/banksystem/.idea/modules.xml b/banksystem/.idea/modules.xml new file mode 100644 index 0000000..1e852db --- /dev/null +++ b/banksystem/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/banksystem/__pycache__/admin.cpython-38.pyc b/banksystem/__pycache__/admin.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e7a93a8336d55b76db8e9dd1f1ff26480418e0f1 GIT binary patch literal 3899 zcmbssU2hasbY^yEb~@c6D*E8lL=w{3#72=)D@ITdd?1@3MUu@XlQJ{t(*3A2J61NU zDHJO)C18RIMx_OnHUW{;q)NfxVdhn5Kc0B=!6(nT_s+)-OB3O?bI&>VeBF<8_S}19 zXh`9pee{oSOmF76zmSNxG!T2>b9O*yas|%hO`*(Jgo3~$o+_sbDFV|4@c?J0P4Nt8 zik38&DrC&mVNR3WKS5P#|Gd<`Fzu{QcV9&6 zPAZrn;@#O<|Fb(v7uLpUyeIB`-!i8129oh60I>%?vVRs=;9(C1+`}^*>|4rA1B5*@ zC4i!tF=c>~IbbRPGv*-dU)B@fFe|01k&4+x98K><({OHFlW%f5*A$=!7of)HHNg`n zQPY#BCmm;|W}8~dOFLHixQ)kZi_oobb_T$|2lu{OJmOfkQ{4B~!GpzpHN&k~)w)xh zu&M?i>i$yMa*E?S$G7ho8yy=fBK?kKd{{g-S)FoDI(4g3B;H1*PkOShm#U?@u0H{` z9dyR=65rTF7BUhr4IUY+A&#peE6M{>hwz%?d4vLkDF)LFiVR8&W*DS;{GwpWOJITQ z$3VWZJNLrlv|M9%6N3!eR%jF>D8a)af*_yCgrZHDL8ujQDP-a?K;5WlIy3+?h#3gR zDI0pC4dPUTP!y*UU@5r-$_RUcgdHN32t27OEFszhHpM_H5@&M`4S+r{NqfKmoizv$ ziBOIWGut768FVpHAdtmryHu@v>3XSRd7@LctmzfrmVikjnszdfo-|Xcnzfl{0e7}Q z$MJIFPvIL`8kKykm--LK=awk&orI!Q}_XA8? zLHG$@7Z)XSFpTJIzOn1kBRbdE6`UkHn*RZsOgTC(qKqUPN^s(~AEJyRpoL+uu`)@4 zgb0%COK{?zVa*#UgYS)%$%Z9Fm{&4uoO}Nktr;U78WoF_H}c$ca}agCN8KhhuXXkU z6uZQaTFxB>ad6POdCmWJxwEzkCCoqjOT6yU;s|B7b8D@=e9oV}JTfw(s$KjA)-v`W z02|}plU*nZ`N@hEl?*$J+#%>z1d?x_XkhV6rkz->y;rJk1v%$==pM{E%tDFZOmb1+ zAqNL(4ideGr{Ec|^%yCbNI5JK&V)H|7)t0ONj^wGktHBWJn%Kh5>Q&qm|2p5Lr`Kj z#R&_lC~zQLpy4nB4Cxn8O_*h9fM_rZ0Vq&AG=B)e#(G)k zERcjc(rYrtq9~K3fEfY{_}}|6K`c$Ng_8+}EL37Ps6OclJM0jlL^MlSc(j*nvBYwO zhx*~X$PZ9R5k630owOd4(J*B)DFirSq7!N+OcIisbg^d9%jy0;nNB$m$@CXNl{yd7 z-T!p8`}Iwl>ks5N5w-EYIHAc=mKUUwbJ(>l`$^#ROLY4wWZ*?HUREJbYi@lEM*AnY zAVE^6g)qT|pvY3io(#vL9$sjRKx~lVLGcW(fdL&{2Ln2|76vrQd~zAg6|HmqTKD29N{wsmse)wF9i|f_ zJlYLUX!P|G8zX2_<7rTA0-fY>E63fcag^Mo4guT2>s0^W^u}iTJ02uju5ScM#X!ODW1k%#0h z@^fSy{AG0AtQop)KaIi|TcmJ#nfesm8!g)t>QkOnJ9fe{>O`lX6Hk7PPW5#RPzU{{ J-5MxMR5*w$av73O)haaHlc$Z+XWoIRY z;4$x+l;#O)2Df#I>Cje9QZNH)NSk>fKsrpPKhl4@nw_y`XFS8aB4hd|dXMH$fAyTZ z(rQ`+dIeUUaz}6r@|u|L)HODC#fxkW1EV=6)P9Z&4i8OK~R7 zJZKs+_nJ+Zw+vc_=w6!S=|Ss|t=BeG)>}rNt%FQ2131<}d#~M0Jx6i26BJj*J1$r# z>N5P))a&G!6I3tDyEyw{GnNUgnc~?Ckh`p+0E8Z`JIF8Sh()2mF@I)q{>mTb&tL!S z=Fc5>Ke&;eJPo;Ldb%9x4}Lj6ei4foem!yL8X}}`j?c$GYMTGmZx-HvyD5FwK&Lt2Z3Er+lFFKSzs ztL3O2)Fo4QkP)y8#oCYCE@0ORBV>16z&;g6pSJA^ja7gQ#}T;%XB6QF4@7WnwSRx2 zy>0LJBfJpV``o~5{LpZiKiYG!FMK$%w}X!yjt-CPeHovQMxy-C-oEHi^T<(!355p2 z1JO`ul!eW0&OLdd!^jo@Sm%L;~wCykThm7j>DDZdJ3B+c1A05coYRAGMshHJZ9qT7htBBwb>q{p+_S0 z5Idn;k*+muT!D!)?2<$6{eWc@dVL_Kv#=J%W^>~tT)CY7{{lSZ1t0LGwtCJCOwM-4 z)&R!*d+(&r&&;2^2r^EUZg*#Xl)irEvzrqO?|*c6=5%`eTyt}C&p_f$6E!e?cA66K zbQDudr($a*NwIeJ4MzCb(@?HmyJGg79wQ zIC*M;_phv>7A%(`F z6dQ_*ZJa_Av4J9{7L!nph>kFSP8`ufA&Lt#18y2PTlrYOpMNY)+9Y^ zBu`NG0GFqVi{==Y=zdaST4knHWLh({!(KJ#5B#E1t_sdHTy2!9Hp^9;CI1%Lza`$8 zu~FX2$-arB)9p#mqZ!KNs!DkSx{+q+D~_uhB~P2|X}iWJJ?$CFf;j%$-oWS3*f-fZ z{hdVLjBh4-b(iFMO7=Vzr*AXtglCpnnPgT@M$~R53 zK*w6rw;nSc!qG`GN)Ew{+C?wVI1^xNQlcbhBV}b%UM6woA|BWE0~~AVjy(dcRG!kY zP5OsF`0VEKdnjy!c9jjBDkbOXSaGN&FARg`TMd}PasY}Q$+QdgmqJGehIqvq8RYqq zOJ+jZLLJ~la0@jGCaRM(P$@Y7`~>2@0$`lVl52g^Q=j18JtTS7$)0sU#ZJ#e+pM!T z>8wro-mRYLxbj`e*(y6*fgbG@DYiV`NvLDZOx=}c$=xb3n`CB_$ZVPeI&(~}JL#Hm z#a-C>zl+R@V){UCBlPhpY{l1?KB78lU8pCG6mZO}r@=&NtyZ9EK}YJSe$0~Bmam)g zv^HiQg<15Q^EzRSO6cq`*vV`%Y7x+1D5!{NbnRAN~f&A5;O@+@M(Q{p15M%42Jx9tzNm&nlkdfQ7o{+9|*?vdUuu zs=c6#FpAI!c~#H{F^8O?SWrh;2Z#cJKaPK0z!4Pt5n&+8qlO^NBRq~RngCp)^X#Hn zz#J3^GoZxC3x9j0?=@cK92d%d?XeBeB7X$%r5MM(>}U02V1rb?Q7+#oxu2BXPsS}N zuW!mR>#a?Cf#W1^gY0dHTT_IaHpons$gGx`)rpA2tW~p6b;f`!tJh=o;IgIo|39WkT^PlE0 z9hV-`EYs2)wnTXWJX;_yH2V|hol8aXLT5{JXfbOV`61-RL#!rfEiEt3oYmyT=O_Sj zLgDnnfBjxHRMVgQG=1`Pt{lu!(5tGjPz4Ne_B8=>=aa-@0_Fj-MQDMcg>?u}L=d@B zAWQ_bfQ9t{B1QqiyuwFS`9U1W+|zduQ?(qwgx-A!@!@n&`lhO_$;+CO&L%Jw z?GK~wT_$5--^jwy5udpr1D)7yIW>=i|p<>);sb15108Cy@rQ;q3o-!M)Q{pjOvcB!pQJviho;FxXdJi4? z$qhs$G+$9Gf(&Ohwh>Gd|E8B#d2g7r88KB|Zbu(nzMV6d&$b?9flobzPMfS=q6(p&!7DmbO*$CA&3FyW@ij1r9MJj0;9j@XJV)f@7}n0_r`l_9GF;{F_h(KiW1dg zG)0>h;+MB0FLNpEqDtWkhrnTDn99 z1PZva&AE73qEr4bafXz)T(10Jp@1XdykctO=$%h2vM6zzc) zk$DpK_~(^Z#_Y6LLhw{v-YWSw$^K38&Qzf0ykj=dk_@z5^?g`oXL+YqoiVd8nR5Tnc(LXsar;hr`(AP1%kuVqdHax5GbB}p z<;t*BJ}j3H$J=jv$|rlKdJ|UJ-yr*2lAe|fWzWv*UvAa?Y3--qm!I7sKf6z=+$VYW z%ijH>cmG396Fh+F4YKz!(fhdUeS9V&d7n_T5Zu9la__9aKIyMd3`qVKm_yv5YUVbX zSt&A&GSfH%(VB0n*+u+=o}0a&TIHv@<)?N_?%fizM`rej%$}wA2dI^aX8tQ=zO-gG z2`}koL;`y*N@E2Y1|@QW*xrSxMbb#Gsf&8i`}K#A6-X-7=vl88VmT;9)XO4`y;awg zQDZpnY&0@_V3=?#;zQIDt{YzCRU;AoVjUBI10D_08n%CMIKt;5j$Y(GeaU|y{y_km zG|u?0R7;-qvS&Ss*kmZHy*h>F+bp{x$*!2@BzCpTt`^zVP8RJ0aGQRp5a#uKueCzq22Wam`%$I~!gK}3Xz zdxgPRA&DOn55-7)mn=GML82dctePTl4no{9M~EIIL|ws2z>J&&@E|(;qR1fx7c-O% zNEIdZtgkNVt4s7qzO}M%ZG3Ag_|13+I3O{ZT_Lj#UjgCb>ImUFz8b>KTgBLGQFjEfOO2-$?kr5d*Bs5*WYM4QPqaB1T=`e17LBgF1TLlx$>`)bCc}c zl)qm2yqbEXMyzR(D%Z)C>*CIm7HldAnqOmthC)Vw+d#WpbT7gRa3xqO46L!jo3MhV zn0fHNkNHZ$B|UMSH9^@y?W-wxO##@fI2DRc6E(3Sd$FLvHTIF9Nq7-j1uf*3SEz-& zDwqn*DRRoABzCV|1l$1Z$V&j=RCJf2LSl!=tdy9b%mhUyNOTgOLXd!X2ijBLn`Kue z*;R@465A-VjUxGGEIFj&P&!IM{N4XHfTiuBk+I>b5-$EZi+ZVIgI?74k$O6VW|ihQ zLz&lPK$n`=!f@TC85o|($3l^S5@En3| z2)YmuzS|DDOB5N2Ojtk}LjZ;tB7X)ju6;5zZCwjqT@E;^t-cJUfi|0UC72O8;B{JE z8A<~+9(>fmsyckszzZe@pEcmq+L0crwF-jbt3qTAY_wQ`I5gm}Vr?-{SBVSkho6>c z$Pv=uAoHNNvyM?w#LFg-#~M53%JAPPkBvm6nv;S9(12ygRufAQ&kf#Wv%uR<2I3j& z8wd;N=6?#m2wt+mi%t&L$@+=<@%A~|9$$T?`BbyysFoeo61`lemy5YCSu9cx_7Muf zYiVVn5I5W(3aQkJDe6Ti6d3C{+j*0dty68MDDN{hC9?^eOlwUM{Q&h89>YJim zTQaEA_YI)St^8n+suvjiDktg|aF zt~@mu(m?RQB#b9yXd*)s>?xGcbjm%?{S!L-(3e=U{ZjhUmp=9Pog>MTFdb%UkIwZw zXZQTR-*-9tW-R6?_`Cd%TISWK6y;0mwEr3CY{k#pkAf*lg{e%-sd+7_snphUdfrGH zqHW~Nyp^=_p=3z(&77UIA!Fvk$?#7VX0gx-g@s&aLQh7R&B7;?WYmo@=b*;-xzPy) ztIR!0B2xD8FsFX@T>a`7^^12N-22d(zj3#AZW66+dtY;EH$JM5U!mcJ=`(Y;NT7Ca zy#CJ3zWT?XEL^|TS35g}rG2$)AJmS|^ex=Ky6~4z`xehjku%3@f4I@NaOLvi`D12r-;gXF4-b8_Z-DYLkVSjoM;i=AaI-2#cb&S&YR|huI3&gW6#$ z*(%f#_5|xi9c53l)u?0aDYgc6oUH|BPX{`X$*6d4^N-r}Lfi54zJj$zq*BjdW^5z#`+W3Qw z8;7X>hMPGwv@cya=pFTZH$Rm2^Zg@713Q(<7P5XS)q|Zq8-=3U;(s)XL*>PiqtEm|lU>)`FIx=$6ttAs<3% zS1`{kjIJyFqO^|w{V-%h%&2G;mDv;4m;pJb8mSo5w6D$@^ZWJHig=RF9I7D|t;PiU zHj6-&(ZTXJ@s{;#munYi>Zh)N@zIPJfIY>c?m1KRi*JoUWa{2?Ki0!x-#f zzIsgb`Y-&2=;IextSeQZL{J#}f}PoGIqteLwtx$x<+`svehr2hGd#fyKQ zzk6Zs?$q3!J6N|j5$B|*AU1NKSa1i+`CWyPvLD2<47$(mKPtQC2+tP$K=*teSUg=| z#e5K^8o#$(NPA>_yV%YnS%^fjA=jxO=M`9zi9Adr5fllN$7#YCDU|bpL5~V7BIhm^ z7*q>p%7T~_I0g6cwoIm2F8EKP?|lV@qB*Lg+Io*3RW+?wH8ew8rAF0Ns;x!U(KzvK zX;}y3$aKhL1mj*sL-2;!rcJ92*6Gx%sKdsz#y61F`6g4*w;JpSRc!`o@B?FDg+5q@ ze^#X8+H_MpIq~4$u|?8-A}pbfNVJx)3LH7Iy9isRv+>m^f-phx8nkjWF#K%Z4NNcR zx+AliK#zZw1j&TkffD{eta$-59%({R;{e4#=`>(j66%13AZfueiq7M~;#*{zFh-3a ztA;8nK$P(5Yq24WQQHVlm$EBLH9Ue5KqOCNHD zLN;O6>qXI2NEB@C1zUSbF)`w6OZL%vxr+7wmtNYCKWOlRA6`ZmaEnX25Qfmw4d5BgKV<67ou|GxH#)vdx^qbH6 zTd7j|XVIF5lb=}~qOA1MjFI8!E1Ie+)c{M~CZ9TomUL{)Msf{L9^ zrLX0i;F#o^7Na>iU%^s2@mMTf@krk!3Hmhll!3v@dV9*;U2;W|yn@Su!9>|aXvsYZ z50@12_$sb#kNO=&jjmk4kA>6hYTfEzMA)+8T`Y zwnh++rE?QTFd8A}*4V9s`4ovMQ4q|31r5QVrAVyuO{DLtPTZtitZE1zAQp=p&8miE z6c#}PF_?}ZFA^=xrRTS0?2R`vmBRj_fRNOVjK<9u54qCPDfG4>OTOtL!{5P?}J1Jhw!G4|K!bRC!s=%Li3qVlAG!4xK{ArT?N)7B~}m`gPz zAVE4JAR%*TkE4OHmzP}uOkG^9x`2sD+P#E#=?aO0C4o&@h{#NYBkY7{R&OKOa^Ww2 z014vjWxoN~Nj#+^1`=p3*j5ouIu|?yUW+X|mIJTBl(BY*5TL52fC%>n0TJbH?GW)N zu$S}-;?~)PkWAb75<=pjWDv_TW;0E6nNqA=$RW9Fpzt0fTC{09|4KT4hh)d`i8n3o z>_g{qxI<}cD>t(mxmha*NWq0yZ2=DQ00B;C^hO@G3QubJy82Y(av=#NZs%QaMITM5 zR-g@{#HydCJ@0T4iPbX9O0;EH$p{kpk*4snG|Lce+~$TC3E=iri+mMmro%e5Q9-lL z1syn(Q)=N%uSPfztMr|K>67@bLe{rK`BhKjs(@<&Ij7REv zy#onN>gGj^@fa0dJT=@SS^qOkG%oMt;SF`vCSuamU}6Pb@(by_n@R;vDwQv?a*o>3 zRH{@?=j04uNqeuSfseC7m0~VS|r4sQVluEH;CY6$C6QAU5jg*#* z)5n;luT2M(NN!p<~)kVk7<3%%RGI&162~ByO2b#|f;=#@}fC}j>uhxXu^PSbTn($Lv>8xA=y4bmJ8QfCm zyb4a4xSCQ^Mo>gz8ntmont%%VWX@#FlNrldMlp-=0%K2#$!xG=FGA`UVlRQS6$G62 z81VYe8bD?C3^_4$aY+6H!68^5(|9k;m|^LlCt9h;rtSs@pTpBF&vk-ks^PQYXy!X5P$vGw;3JtJO3D@>}7npD7_zbQVPd zX9+Ys55P&A+#;NEVMw^((5GTs;Nl7~q`m`Ttr+b!wAsP9*cvsOR=~C5;7vLB`0Hm1 zkz(`vbg*?LpNx*v&2sl}I@s2Az1V*~d%F%sK6!Qg?zOJZ#@of$be0Z}4!`8%$?FnsJoi!m&utit}AXNGHJ*hP@?=+`n&;YN4saH>WUPG!mjU@jC3I)qY literal 0 HcmV?d00001 diff --git a/banksystem/__pycache__/check.cpython-311.pyc b/banksystem/__pycache__/check.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8579a5bc061fde5643902e95347d53b19bb07a5f GIT binary patch literal 6086 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 mL&Kh_!a}i@L^Gz}n!g$jW%A{ht>H7vtD$CSjQ zxOZ1q0)@(!oF=FZJ4l?Sh99iLb>$Y0k~V-+%Sm4QH{7dDN_z5BACjm3W|wyqDYbXl z@7cN8ncvLpo$l>TGCVJST`&IoAY%_`u=_DFcm>5hf{L>o`vv0~*H;+VZEe}e>D=Jv z3d3aF{O!{A`uVL-Hy_=={^4YKM=(wxzh5fbt^WR39zx6sCU7f+&1@NV9N*5bXq4{aBJjQ68W@&o)J z+HQV`51{Sghxs7dUj8^vHx$H1&)UVAqJ}Sq5A~^xqPV0x&L-F$EqjNhwZL@k*)zhx ztgOBnA03%G?b^bfI{E7O_|(Zt(J$MM=T1%9P7$3{rZj82Qzu?H@%*vlKRteYipH>D$lQEjMB^nvPoI+M?m(abAHck|q8MS?|1nJ~j9p)eM0oi5<@)-+9^D6oH+Fu1x$)sA zissS%^OOEFySFG#|A#)CHiMWvVqk?Q31TH@&i8`YoG3Y7+7x6IVNunED%U0HGqZ)a zTDTE0tOS-1fP>xe0%Nmd7Tfw^tdNH*GCE9~q%()ykYL3ZC6E&Pb=V z{3r3j#z*V*tGAVZKkfef!P3=v+x>}Cd9d_eS`Q2i0^Ow>&NbfZceQn|TAQ=Y&Ow%e)Ic*&jcg`EbyONwRj9;r*xsHrdXD0fmsZTcf! zM$R;jK@BeS1fnDyVF#p3 zN&jbH*{RsMvlYj7{PIXDij^&rP95)n0SmOF{xP%>&ZCX>`%Cp(p8>rOKfiZ$U!7)l zNQ?f<`)=R4_Er7fZ3TW>)twzIqjEHtitQosAh zeHlzn;!{0`n#~|$V$1$sA(tJ zuby2rk!4I|8C?w24D@vLj@3*Z$rmmr-EGl8pz5yu~xG5`a~cc+=OD26M6$tOBR?Ny?VDPhlo!lf)nsDPk) zgbaD0CRLk=BwmDG@?6|N$m%^L4%bo0sz!D)BR?HR`=n!^Yw9-FU76)!;_a00ppq}N z10{hud?a!(M1`TP}*5+TgHt#n6xwiAcQsbQu8<#HBZ+%*q7xkyzjEZUD zZ5@u&!6I!5Vj`ZPY6w*>shr-M2jo?RMj(?>T=WwWL8*y;A)!Pl%Ef8d7#EKd2|++r z@&?q`gp_lpLgqS$Rdo;2>BeKBrnVo&)Z=)={=&d+Lyk4Kw}Fie7#Z!mMk{aMQSZi*&g052a6ei+l|H zY4XZO6h467?_xG*k=Kt`iZe=4WV%i*AgPg06VVkct6PgqXGxr!+`pC1Lc(mikA4>% z+#d7!AeqmXE8L%@eosDM^$W9VMNoDTlqr;nC_zbMDzi!hlb9k!6+gjVwTY&sSs@_Ak3Y no6~mDQ_P7@JVli}S*wzat(TM@UnW6Z3i4*6|99*#j;Q??ozQ-c literal 0 HcmV?d00001 diff --git a/banksystem/__pycache__/readAppendCard.cpython-311.pyc b/banksystem/__pycache__/readAppendCard.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fbb75be527190c0f953018a39e86136e33f2b61c GIT binary patch literal 5135 zcmb_gU2Idy6`r|&zK*YnZ(6v*8zdGhu`N70OLd>9aJS9oa%r%(+*x0U?f3> zId+Jube8yJQ$C{wRqV(lI<^iu0CLF*0xt0RL4a`*qqzb?F57aP#A%$1^Kl_A#-%A} zKWq1a8+Vq>Q2z|4V@IYO2!x~ISRmkYn1Z22x=bkqgP%}M1%E#b8pc2`OvZ`1Q@v5` znpqK6wP-9Hy9SlyzE42s@9!~XtZ=e7)NSBko2>Ney`u*^e_?34(Rn<4MeD)#=ROHW zyN%8^&FGHx_H|yw+%+Sn^>pg6^22?7T9mDSSKl=qO=GYswsY=({TF7xl zIld?-6y?OCoRrT^!Q5wY{w%?XJN&u=vhGG$g;0s$L8t-%yK)8sp$HrV91^FyKxb0b z!1Zj}q=wl%r(0#fhu}e^W5xtUW3vQCB0`O$=dxyUKq=1}G&Tf&Wty2L|wo{#VRX!qKkY zU9qb%lj^U;{#e(}mKkcwS~S$FhNG8!qAB!(Wt&bk@<=$U8Kx9uwyv*+>6(IeB^dDu z*70&(x+$VR878M|h5!}NpRB_cu!ljnea@Ig3o;e}5@gX`HL@#NJ$)(VZce+KGw$Xk z!aMgbG-PY)hCayFtr?Hpi;PCcqDzFj_cIvbvYy&;<(@Ke?hhA!f8oovdGAd7Tzk5{ zDO2B+_B3Za%_;U-;<1Sc-LXCyJj32!Amnu`NiSc%TuHqo6Ho1sVxS#=ez@}RJN(0U zgu{Cs51T2V-zVwlEEeFA6lAf$Cn1AHgFRXxU{(YIJ-upw1Z5=<_*H)}VwEr+Vf(Bj zYs?U4%xpV#j4=#QFirs^?7t`F==NXr8mc>o0KV=<2HhtL)y z3k!cAf&jctFT<~uK(_rHWV;o}Hcx;o6x7Eo-qcSlD;}r`ZjgCQr@B{(2p}$m0cv zVBqw!wVE^-vL_2Ypn-C9>t?eA3<&=*v#3SWJcNI<*4v z;ay>6>cf(fIY=uKJ|DBU8SW_d>fnaL$4UM;<{ZVL0?74sbC>@gbN4y@CLPf6u=Mo^ z8xR=P>;Vaau0z$jg8h-$D_Y?b^|wH2iUWE$rkTQJqc>^_YJX3kz8foBtgXL`UF^e( zTvxD|wDnD(9;_;`mmuT*ji5I6!WkvVzg)@)f4c=Z#JTZFRqaSL8Ja(ys%lMFwPvbX zk*Dh)08e|z<$LmkcT^cuMik`ZdRD~X8CH6Mkk`FdVto9jsy|A^TURy>&b{#g_ry~( z=A77)io+7T_b7UR=^*Z6mTaK?cQ$W9u>g+@%eH+x*e}b?b0q>UV{Mg~> zKFs1B#|jHOP(rAMuW_SosxP$PH@B9a$Nu_5b}JzOmM5g{cWFIVU0G7$g*GRa-Ur#tSHsL-)2e)q!)w^<&f)Lh z0%I)R`QzfaN;*8Lu4ty%r-!34X0FVb;nswUwJOPYLB#N+H=+(%%B-;HhXprW zINmOE0Zvf0NMKM#`#=dpnejIO2;9}{M-Pr29Fnu1HRJAk?$OGz${{gZvldCqf}yr- zW$i@GVA}o+ne&Xq?H31a~kgZ-b(zIB+ zakO)+bEqOKd%uy_K9<)`G)x#Nd2L#5%*c%?xsi=XoiG3ZjHuLoqtriE>L=8+(wI>i zQ|tq8ouL@BWIqu2HdsNa^B+ZBiQnTbN=HDwfy`0t_ih+eTn4F9tXU%EU^zH;5`wRt z&?C{NpMMKb>_hBs#sk9t0*YUV*GUZ9ET$@qzwJApk=NHLQ3lKg`QJVCd7qg zLHN%10ij#U<;r{w*vBXNO=14meBxktgCO=j6BS(c4;4QyX%%ss(yR6hyI_p$V20I*|M<%m4t zOP-ltGr#kJBkgL>xY`qKPpa0BZW!B;_}OCR>RW@ugNgR6Qgipz?Nhf-51&qa@Wi$1 zR?~1(qAe@PpPl&4i6M2kJ1wls2IakUZU;O RV>gc_*dH#%#R}Nw{TB;k2UY+8 literal 0 HcmV?d00001 diff --git a/banksystem/__pycache__/readAppendCard.cpython-38.pyc b/banksystem/__pycache__/readAppendCard.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6fa00e3405df197ddc7d59c7d14a2d8c30d93e78 GIT binary patch literal 2824 zcmaJ@&u<$=6rS0gU9TOdnDhq}DhTDLQ5(_FHf>c^K?y-f#e%dI$TC>&&Zf0%uantz zOQOvIrHBhw4@ihZ56Jy|~jUfGdZiaDaa`Jg5dP&378qMsqtztGQ8o1qrHL?&kI zJYfk>ti(=4;w0`y28X@GHhF2&QWlNTUbR{e>v6SO%xDn>%?0iHw7|zw=kfn(EsAcn zX~8VKPugLytaEi4gmFDyra|7~b-GvTw6uo-7u)`gO{Sis$WO1#oU2@k0u@zeKfHLc zGTZh$Et(fqE(f7co$N?dJ(qI_{#HrOeXp#@y!!Fr3?K5D#yr4*g9b%`C(YgSld`(tYfTum~FTO zd8VW=S%Fw;1SStN3bT(4B{*BH`b|QK5VRE0j%h9p0I4b9PFB|acyfjSLbU$Q#|Aqe zJob^*{sq1cwmwTvOq`V#IMTK699!kr*s7KAb-ux7*_SV_+KIJp(edn9B=#ELpdV*T zM?Pn#*k^2>eZdki(BI}i&unt-QEJ+<9$qUtTC@pvoka$k z^)QIETQiAJ`)Mm$1UGBVqDW6{Ehz0E|B<#-u>14^A%I(C^l25i;CVjIS4IZ_U_`0t zDjYdA0Ak3+gQ5$zhP75ut?FF0+G@*A6a9R(y40yP((g%k_U`^$GMHov$t%=Jcms`7 zBfd3kYJ!?0`CW*_DycVVlren`2(V$-PSP4OIZIkNjQxNTjC))#f%ebJfuWsYz8R`{ z%|{yg*A7)&r@IM3N7Z+N)BzAvbreVq_BxjiG_b9J@U$7__C_6DwPOqCp#sSoRBgL9 zXJ($aa~_IjF@2i)Xptcj{_|lQ9IN^ zc3O+-9Slx|quxe{cQMdfsO^GFy-fFCrIrF^dAz_6k$A?a<_!T=GomaNxiY(O)oX}( z6y|jpWYVl@;tj1~gkj|H1`Rn#ttSW1_FRQ~KD8Yeis>}92;?2SwRX$FA*@_&&j!tB z*bfC5S^+kIsvyI3Q;^uu_RP+(dBD@>Zk~efO$=IQ}PU18SQKZwgKnsenk0LnhZaQ!2vP|C* z9e}mf-PpQw|F7S>TfhFab@!Ji559l&+x^Gib^reH-lK;IllLz0-rF6lGC|~%y zT+Eotlh!H}2kok$)xH^MXHnI|*d)TFj>;omFQyQbJycAiF$mP~sGLiwu$S_L44T#B zG}3$+Fz%AIr%P21dvNMYk31?4S^G zJt!>a$r-%RxD?V^b5~i+33(n{z1-QzT`b5GiCA|?q%JaM self.cards[index].cardMoney: + print("余额不足,您当前余额为%d元!" % self.cards[index].cardMoney) + time.sleep(1) + return + self.cards[index].cardMoney -= mon + self.writeCard() + + print("取款成功!你卡上的余额为%d元!" % self.cards[index].cardMoney) + time.sleep(1) + pass + + # 转账 + def inMoney(self): + card = check.isCardExist(self.cards) + if check.isCardLock(self.cards, card.cardN): + return + while True: + cardN = input("请输入对方的账号:") + cardOther =check.isCardNExist(self.cards, cardN) + if not cardOther: + print("账号不存在") + if check.isSure("继续转账"): + continue + else: + time.sleep(1) + return + else: + break + index = self.cards.index(card) + while True: + mon = int(input("您当前的余额为%d,请输入要转账的钱:" % self.cards[index].cardMoney)) + if mon > self.cards[index].cardMoney: + print("余额不足,您当前余额为%d元!" % self.cards[index].cardMoney) + if check.isSure("继续转账"): + continue + else: + time.sleep(1) + return + else: + self.cards[index].cardMoney -= mon + break + indexOther = self.cards.index(cardOther) + self.cards[indexOther].cardMoney += mon + self.writeCard() + print("转账成功!你卡上的余额为%d元!" % self.cards[index].cardMoney) + time.sleep(1) + pass + + # 销户 + def DAccount(self): + card = check.isCardInfoSure(self.cards) + if card: + self.cards.remove(card) + self.writeCard() + + print("销户成功!") + time.sleep(1) + pass + + # 挂失 + def hangOutAccount(self): + card = check.isCardInfoSure(self.cards) + if check.isCardLock(self.cards, card.cardN): + return + if card: + index = self.cards.index(card) + self.cards[index].cardLock = "True" + self.writeCard() + + print("挂失成功!") + time.sleep(1) + pass + + # 解锁 + def unlockAccount(self): + card = check.isCardInfoSure(self.cards) + index = self.cards.index(card) + self.cards[index].cardLock = "False" + self.writeCard() + + print("解锁成功!") + time.sleep(1) + pass + + # 改密 + def changePassword(self): + card = check.isCardInfoSure(self.cards) + if check.isCardLock(self.cards, card.cardN): + return + newpassword = input("请输入新密码") + index = self.cards.index(card) + self.cards[index].cardPassword = newpassword + self.writeCard() + + print("改密成功!") + time.sleep(1) + + pass + + # 写入文件 + def writeCard(self): + self.appendCard.append('', w='w') + for card in self.cards: + self.appendCard.append(card) + + # 退出 + def exit(self): + if check.isSure("退出"): + return True + else: + return False + pass + + + diff --git a/banksystem/card.py b/banksystem/card.py new file mode 100644 index 0000000..87416a5 --- /dev/null +++ b/banksystem/card.py @@ -0,0 +1,15 @@ +''' +卡: +类名:Card +属性:卡号【7位随机】 密码 余额 绑定的身份证号 手机号 +''' + + +class Card(object): + def __init__(self, cardN, cardPassword, cardMoney, identityId, phoneNum, cardLock=''): + self.cardN = cardN + self.cardPassword = cardPassword + self.cardMoney = cardMoney + self.identityId = identityId + self.phoneNum = phoneNum + self.cardLock = cardLock diff --git a/banksystem/cardinfo.txt b/banksystem/cardinfo.txt new file mode 100644 index 0000000..e69de29 diff --git a/banksystem/check.py b/banksystem/check.py new file mode 100644 index 0000000..18cf3b2 --- /dev/null +++ b/banksystem/check.py @@ -0,0 +1,147 @@ +''' +验证类: +用户名、密码、卡号、身份证、手机号验证 +输入确认 +''' + + +def isCardNExist(cards, cardN): + for card in cards: + if cardN == card.cardN: + return card + else: + return False + + +def isSure(operate): + while True: + res = input("是否确认%s?【yes/no】" % operate) + if res not in ['yes', 'no']: + print("输入有误,请重新输入!") + continue + elif res == 'yes': + return True + else: + return False + + +def isPhoneNum(phonenum): + if phonenum[0] != '1': + print("输入的手机号开头不为1,请重新输入!") + return False + elif len(phonenum) != 11: + print("输入的手机号长度不对【11位】,请重新输入!") + return False + elif not phonenum.isdigit(): + print("输入的手机号必须全部是数字,请重新输入!") + return False + else: + return True + + +def phoneNumInput(): + while True: + pnum = input("请输入您的手机号:") + if isPhoneNum(pnum): + return pnum + + +def identifyInput(): + iden = input("请输入您的身份证号:") + return iden + + +def isCardExist(cards): + + cardN = input("请输入账号:") + password = input("请输入密码:") + + while True: + for card in cards: + if cardN == card.carN: + if password == card.cardPassword: + return card + else: + password = input("密码有误,请重新输入密码:") + break + else: + cardN = input("账号不存在,请重新输入账号:") + password = input("请输入密码:") + + +def isCardPasswordSure(newassword, oldpassword): + + if newassword == oldpassword: + return True + else: + return False + + +def isCardInfoSure(cards): + # 卡号和密码是否正确 + card = isCardExist(cards) + idenId = identifyInput() + pnum = phoneNumInput() + while True: + if card.identityId == idenId: + if card.phoneNum != pnum: + print("预留手机号输入不对。") + if isSure("继续注销或挂失卡号%s" % card.cardN): + pnum = phoneNumInput() + continue + else: + return False + else: + return card + else: + print("身份证号输入不对。") + if isSure("继续注销或挂失卡号%s" % card.cardN): + idenId = identifyInput() + continue + else: + return False + + +def isCardLock(cards, cardN): + card = isCardNExist(cards, cardN) + if card != False: + if card.cardLock == "False": + return False + else: + print("此卡已挂失!") + return True + else: + return "卡号不存在" + + +class Check(object): + + def __init__(self): + pass + + # 用户验证 + def userName(self, admin, password): + """ + :param admin: 用户名 + :param password: 密码 + :return: + """ + self.admin = admin + self.password = password + adminFlag = False + admin = input("请输入用户名:") + while True: + # 如果用户名输对,但密码输错,那么重新输入时只需输入密码验证即可 + if adminFlag: + admin = input("请输入用户名:") + password = input("请输入密码:") + if admin != self.admin: + print("输入的用户名不对,请重新输入!") + adminFlag = True + continue + elif password != self.password: + print("输入的密码不对,请重新输入!") + adminFlag = False + continue + else: + return diff --git a/banksystem/readAppendCard.py b/banksystem/readAppendCard.py new file mode 100644 index 0000000..65702da --- /dev/null +++ b/banksystem/readAppendCard.py @@ -0,0 +1,65 @@ +from card import Card +import json + + +# 读 +class ReadCard(Card): + def __init__(self, cardN='', cardPassword='', cardMoney=0, identityId='', phoneNum='', cardLock=''): + Card.__init__(self, cardN, cardPassword, cardMoney, identityId, phoneNum, cardLock) + + def dict2Card(self, d): + return self.__class__(d["cardN"], d["cardPassword"], d["cardMoney"], d["identityId"], d["phoneNum"], + d["cardLock"]) + + def read(self): + with open("cardinfo.txt", "r", encoding="utf-8") as fr: + cards = [] + for re in fr.readlines(): + cards.append(self.dict2Card(eval(re))) + return cards + + +# 写 +class AppendCard(Card): + def __init__(self): + Card.__init__(self, cardN='', cardPassword='', cardMoney=0, identityId='', phoneNum='', cardLock='') + + def card2Dict(self, card): + return {"cardN": card.cardN, "cardPassword": card.cardPassword, + "cardMoney": card.cardMoney, "identityId": card.identityId, + "phoneNum": card.phoneNum, "cardLock": card.cardLock + } + + def append(self, card, w='a'): + # 清除 + if w == 'w': + with open("cardinfo.txt", "w", encoding="utf-8") as fa: + fa.write('') + else: + with open("cardinfo.txt", "a", encoding="utf-8") as fa: + json.dump(card, fa, default=self.card2Dict) + fa.write('\n') + + +# 删 +class Del(object): + def __init__(self): + pass + + def del_(self, cardN): + readcard = ReadCard() + cards = readcard.read() + for card in cards: + if cardN == card.cardN: + cards.remove(card) + break + else: + print("卡号不存在,请重新输入!") + return False + + appendcard = AppendCard() + appendcard.append('', w='w') + for card in cards: + appendcard.append(card) + return True + diff --git a/banksystem/银行系统.py b/banksystem/银行系统.py new file mode 100644 index 0000000..3633481 --- /dev/null +++ b/banksystem/银行系统.py @@ -0,0 +1,35 @@ +from admin import Admin +from atm import ATM + +admin = Admin("admin",'123456') +admin.window() +atm = ATM() +admin.login() + +while True: + admin.funcWindow() + choice = input("请选择您要办理的业务:") + if choice == '1': + atm.newAccount() + elif choice == '2': + atm.checkMoney() + elif choice == '3': + atm.saveMoney() + elif choice == '4': + atm.getMoney() + elif choice == '5': + atm.inMoney() + elif choice == '6': + atm.DAccount() + elif choice == '7': + atm.hangOutAccount() + elif choice == '8': + atm.unlockAccount() + elif choice == '9': + atm.changePassword() + elif choice == 'T': + if atm.exit(): + if admin.logout(): + break + else: + print("未有此功能!")