Re: [问题] 新手请教关于循环中break的问题

楼主: uranusjr (←這人是超級笨蛋)   2014-04-01 18:17:09
※ 引述《solsiso (solsiso)》之铭言:
: 各位前辈好,想请教以下问题
: 1.下面程式中有加break和无加break时,在最后print出来的结果会差1,
: 这会是break导致的吗?还是我的资料有问题?
在不知道档案内容的情况下无法判断
不过如果你如果真的知道 break 的意义应该可以自行判断
: 2.在第2个for loop中,我使用string0去取得list的物件,之后再利用string0以移除
: 字串中所有的空格及\t。
: 但为什么我不能直接用j.replace(' ', '').replace('\t', '')来做移除的动作呢?
可以啊 j = j.replace(' ', '').replace('\t', '')
https://docs.python.org/2/library/stdtypes.html#str.replace
Return a copy of the string with all occurrences of substring old replaced
by new. If the optional argument count is given, only the first count
occurrences are replaced.
: 3.第2个for loop中的 if判断式,我连续使用and及使用()
: 我对这判断式的想法是:
: 执行方式是由左而右,先找第一个and并对它左右二个括号内的式子判断,然后再
: 做第二个and并对它左右进行判断,若皆为真,才执行if内的statement。
: 请问这种做法会不会因为short-circuit evaluation而导致我的判断逻辑有误呢?
如果你理解 short-circuit evaluation 的运作原理, 而不是只知道名词
那么你应该会知道无副作用的判断式不会因 short-circuit evaluation 改变结果
作者: solsiso (solsiso)   2014-04-01 19:10:00
感谢~第二点我想我有弄通,我原本没做指定(=)的动作所以没变

Links booklink

Contact Us: admin [ a t ] ucptt.com