Python---基本小技巧

print输出不换行

# python2 print不换行。文件首行加上 from __future__ import print_function。
from __future__ import print_function
print ("hello ", end='')
print ("python", end='')

# python2 print不换行。print函数最后加上一个逗号,会把两个输出打印在同一行,不过两个输出之间有一个空格的间隔。
print "hello ",
print "python"
print '{0}'.format(123),
print '{0}'.format(456)

# python3 print不换行。print函数中的参数end默认值为'\n',表示换行,给end赋值为空,就不会换行了。
print ("hello ",end='')
print ("python",end='')

# 参考:https://www.cnblogs.com/mtcnn/p/9411765.html

Python中bool类型转换

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xuhui_liu/article/details/77248704

在python中,以下数值会被认为是False:

  1. 为0的数字,包括0,0.0
  2. 空字符串,包括”,”“
  3. 表示空值的None
  4. 空集合,包括(),[],{}

其他的值都认为是True。

None是python中的一个特殊值,表示什么都没有,它和0、空字符、False、空集合都不一样。

bool(‘False’)的结果是True,因为‘False’是一个不为空的字符串,当被转换成bool类型之后,就得到True。
bool(’ ‘)的结果是True,一个空格也不能算作空字符串。
bool(”)才是False。

 

附加:

python中string和bool的转换

版权声明:本文为博主原创文章,欢迎转载,仅请署名 https://blog.csdn.net/muzizongheng/article/details/9368409

python中字符串“True” 和 “False"转为bool类型时, 不能通过bool(xx)强转。

注意是因为在python中,除了‘’、""、0、()、[]、{}、None为False, 其他转换都为True。 也就是说字符串如果不为空,则永远转换为True。

好吧, 只能通过这样了:

data = "True"

isTrue = data == str(True)

 

附加:

a = 2<1
b = str(2<1)
print a,b
print type(a),type(b)
c = "True"
d = "False"
print bool(c)
print bool(d)

输出结果:

False False

True True

你可能感兴趣的:(Python基础)