这段Python代码为什么运行不了 为什么python代码正确但运行不了结果,求大神解决
\u4e3a\u4ec0\u4e48\u6211\u7684\u8fd9\u6bb5python\u4ee3\u7801\u8fd0\u884c\u4e0d\u51fa\u6765\u7ed3\u679c\uff0c\u4e5f\u6ca1\u62a5\u9519\uff0c\u8dea\u6c42\u5927\u795e\u6307\u70b9\u53ea\u662freturn\u554a
\u6ca1\u6709\u770b\u5230\u5bf9\u7ed3\u679c\u5904\u7406\u3002\u6240\u4ee5\u5c31\u662f\u8fd0\u884c\u5b8c\u5c31\u7ed3\u675f\u4e86\u3002\u53ef\u4ee5\u641e\u4e2a\u4e2d\u95f4\u53d8\u91cf\uff0c\u628a\u8fd0\u884c\u7ed3\u679c\u7684\u503c\u8d4b\u503c\u7ed9\u5b83\uff0c\u518d\u628a\u4ed6\u6253\u5370\u51fa\u6765\u3002
\u6ca1\u6709\u770b\u5230\u5bf9\u7ed3\u679c\u5904\u7406\u3002\u6240\u4ee5\u5c31\u662f\u8fd0\u884c\u5b8c\u5c31\u7ed3\u675f\u4e86\u3002\u53ef\u4ee5\u641e\u4e2a\u4e2d\u95f4\u53d8\u91cf\uff0c\u628a\u8fd0\u884c\u7ed3\u679c\u7684\u503c\u8d4b\u503c\u7ed9\u5b83\uff0c\u518d\u628a\u4ed6\u6253\u5370\u51fa\u6765\u3002
第一个esle,前面没有if,它和while在一起没有这样的用法;
if和第二个else,缩进量不同;要将第二个else和if的缩进相同,if、else里面的print缩进相同
猜中的情况 print放在倒数第二句,缩进和while同级别
# example
import random
secret = random.randint(1, 10)
temp = input('guess:')
guess = int(temp)
while guess != secret:
if guess > secret:
print('too big')
elif guess < secret:
print('too small')
temp = input('again:')
guess = int(temp)
print('success')
print('game over')
错误的地方:
直接引用random模块,randint需要使用random模块前缀
重新输入的temp没有转换成int,字符串和整型比较错误
判断的secret拼写成错误的secrect
代码缩进错误
游戏判断逻辑顺序问题,应在首次输入后判断大小再输入
其它改进:
增加输入检测,如非数字的判断等。
绛旓細if鍜岀浜屼釜else锛岀缉杩涢噺涓嶅悓锛涜灏嗙浜屼釜else鍜宨f鐨勭缉杩涚浉鍚岋紝if銆乪lse閲岄潰鐨刾rint缂╄繘鐩稿悓 鐚滀腑鐨勬儏鍐 print鏀惧湪鍊掓暟绗簩鍙ワ紝缂╄繘鍜寃hile鍚岀骇鍒
绛旓細鑻辨枃杈撳叆涓嬬殑鎷彿鎵嶈锛岃繕鏈夋病鏈塶鍙橀噺锛屾妸n鏀逛负a
绛旓細褰撲綘杩愯杩欐浠g爜鏃讹紝Python 瑙i噴鍣ㄤ細鍋氫互涓嬪嚑浠朵簨鎯咃細1. 鍔犺浇浠g爜鏂囦欢锛氳В閲婂櫒棣栧厛浼氬姞杞藉寘鍚繖娈典唬鐮佺殑鏂囦欢銆2. 瑙f瀽浠g爜锛氭帴鐫锛岃В閲婂櫒浼氳В鏋愯繖娈典唬鐮侊紝灏嗗叾杞崲涓烘娊璞¤娉曟爲锛圓bstract Syntax Tree, AST锛夈侫ST 鏄婧愪唬鐮鐨勬娊璞¤〃绀猴紝浣垮緱瑙i噴鍣ㄨ兘澶熺悊瑙d唬鐮佺殑缁撴瀯鍜岃涔夈3. 鐢熸垚瀛楄妭鐮侊細瑙i噴鍣ㄤ細灏...
绛旓細娌℃湁鐪嬪埌瀵圭粨鏋滃鐞嗐傛墍浠ュ氨鏄杩愯瀹屽氨缁撴潫浜嗐傚彲浠ユ悶涓腑闂村彉閲忥紝鎶婅繍琛岀粨鏋滅殑鍊艰祴鍊肩粰瀹冿紝鍐嶆妸浠栨墦鍗板嚭鏉ャ
绛旓細sizer)panel.Fit()def OnClick(self,event):data={0:self.addTextCtrl.GetValue(),1:self.addTextCtrl2.GetValue()} dlg=MyFrame(data)dlg.ShowModal()dlg.Destroy()if __name__ == "__main__":app=wx.PySimpleApp()frame=MyFrame()frame.Show()app.MainLoop()2.7 娴嬭瘯鍙互姝e父杩愯 ...
绛旓細杩欐绋嬪簭鏄妸鏂囦欢鎵撳紑锛岃鍙栫涓琛岋紝鎶婄涓琛屾寜鐓ф椂闂存牸寮忚鍏ワ紝鏈鍚庢寜鐓у皬鏃朵负鍗曚綅杈撳嚭銆
绛旓細鎻愰棶鑰呴昏緫妲界偣澶锛屽鏋滀竴涓暟涓嶆槸2,3,5鐨勫嶆暟瀹冨氨涓瀹氭槸璐ㄧ礌浜嗗悧锛11涔樹互13寰楀埌鐨勭粨鏋滆繖涓暟灏变笉鏄川绱狅紝浣嗗畠纭疄涓嶆槸2,3,5鐨勫嶆暟銆傝繕鏈浠g爜涔熸湁涓ラ噸閫昏緫娣蜂贡锛屼笉鏄2,3,5鍊嶆暟锛屽惊鐜彉閲忓姞1锛岄偅濡傛灉鏄憿锛岃涓嶈鍔1锛屼綘璇达紵锛屾纭唬鐮佸涓嬶細def IsPrime(n): if n<2: return False...
绛旓細浣嶇疆閲嶅浜嗭紵鐢ㄦ枃浠舵祻瑙堝櫒鎵惧埌鏂囦欢锛岀劧鍚庡湪鍦板潃鏍忕殑浣嶇疆澶嶅埗鍒板懡浠よ锛
绛旓細绗竴琛宨nput寰楀埌鐨勫兼病鏈夌敤鍒帮紝浣犲彲浠ユ妸绗竴琛屾妸鑾峰彇鐨勫煎畾涔変竴涓彉閲忥紝绗簩琛宔val鎷彿閲岀洿鎺ョ敤鍙橀噺灏卞彲浠ヤ簡
绛旓細浣犺繖鏍峰啓浠g爜涓嶆elif閭e潡鎶ラ敊锛屼綘鏍规湰娌℃湁缂╄繘鍟 if x>0:x = 0 print "***"elif x ==0:print '***'else:print "***"