Perl 板


LINE

※ 引述《yingwan (yingwan)》之铭言: : 现在在练习写一个情境,要使用者输入id,密码,email : 然後把这写资料写入档案里 : 如果档案里已经有同样的id名称,要使用者重新输入那些资料 : 一直遇到的问题是,我的程式一直无法侦测重覆的id : 希望有好心人帮我看看我哪里写错了,感激不尽 : #!/usr/bin/perl : #----------------------------------------------------- : #Prompts the user for the userID, password and email : #Reprompt if userID already exist : #otherwise, append the input to the file : #------------------------------------------------------ : $file="hw.out"; : open(IN,$file) || die "can't read $file"; : @all = <IN> ; : close(IN); : chomp @all; : %all= (); : foreach (@all) { : ($id,$psw, $email) = split(/,/,$_); : $all{$id} = $pw; : print "Please enter your user ID:"; : chomp ($id=<STDIN>); : print "Please enter your password:"; : chomp ($psw=<STDIN>); : print "Please enter your email address:"; : chomp ($email=<STDIN>); : if (exists ($all{$id})) : { : print "Please enter your user ID:"; : chomp ($id=<STDIN>); : print "Please enter your password:"; : chomp ($psw=<STDIN>); : print "Please enter your email address:"; : chomp ($email=<STDIN>); : } : else { : open (IN, ">>$file") || die "can't write to $file"; : print IN "$id, $psw, $email\n"; : last; : }} : 再次感谢好心人指教 #!/usr/bin/perl #----------------------------------------------------- #Prompts the user for the userID, password and email #Reprompt if userID already exist #otherwise, append the input to the file #------------------------------------------------------ $file="hw.out"; open(IN,$file) || die "can't read $file"; @all = <IN> ; close(IN); chomp @all; %all= (); foreach (@all) { ($id,$psw, $email) = split(/,/,$_); # $all{$id} = $pw; $all{$id} = $psw; } #print "Please enter your user ID:"; #chomp ($id=<STDIN>); #print "Please enter your password:"; #chomp ($psw=<STDIN>); #print "Please enter your email address:"; #chomp ($email=<STDIN>); #if (exists ($all{$id})) do { print "Please enter your user ID:"; chomp ($id=<STDIN>); print "Please enter your password:"; chomp ($psw=<STDIN>); print "Please enter your email address:"; chomp ($email=<STDIN>); #} } while(exists $all{$id}); #else { #open (IN, ">>$file") || die "can't write to $file"; open (OUT, ">>$file") || die "can't write to $file"; #print IN "$id, $psw, $email\n"; print OUT join(',', $id, $psw, $email) . "\n"; close(OUT); #last; #}} --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.232.236.185
1F:→ giacch:$file="hw.out"; # hw等於homework? 作业要自己... XD 10/08 09:32
2F:→ yingwan:是作业啦..我想了一天都想不出来上来问人的,很不好意思, 10/08 12:52
3F:→ yingwan:谢谢g大啦 10/08 12:54







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP