如果我想取一个数字作为输入,我还需要这个.strip()方法吗?像这样:
n = int(input().strip())
Run Code Online (Sandbox Code Playgroud)
而不仅仅是编码:
n = int(input())
Run Code Online (Sandbox Code Playgroud)
我知道.strip()返回一个字符串的副本,其中所有字符都已从字符串的开头和结尾剥离.但我想知道为什么/如果有必要.
将它转换为整数时没有必要int因为int已经处理(忽略)前导和尾随空格*:
>>> int('1 ')
1
>>> int(' 1')
1
>>> int(' 1\n\t') # also handles other spaces like newlines or tabs
1
Run Code Online (Sandbox Code Playgroud)
如果您使用sys.stdin.readline(包含尾部换行符)并且您不知道使用该值的函数是否可以处理其他空格,则最重要的是剥离空格.
*仅供参考:类型float,complex,fractions.Fraction,和decimal.Decimal也忽视了开头和结尾的空格,所以你并不需要strip,如果你使用到这些字符串.