1.
在python里类似与C语言的条件表达式
a = 3
b = 2
x = a if a > b else b
其结果为将a,b里的较大值付给x
Python语言中,
if x > 0:
y = 1
else:
y = -1
等价于:
y = 1 if x > 0 else -1
在c里
conditional expression:
expr1 ? expr2 : expr3
首先计算expr1,如果结果为真,则计算expr2,其结果也为条件表达式的值;否则,计算expr3,其结果为条件表达式的值。
如果expr2和expr3的类型不一样,那么按照类型转化的原则转化成一样的类型,此时不论expr1是否为真,条件表达式最终的值都会是类型转化后的值,例如:
(n > 0) ? f : n
f是float类型,n是整型,此时条件表达式的值是float类型。
如果在程序中能利用条件表达式代替if-else,就尽量替换,这会使得程序更紧凑。
如 max=(a>b)?a:b
2 关于python里 字符串的赋值操作
在python里字符串和元组是不可变类型 不能进行赋值操作
如
str="1256565"
str[2]=1
运行后
如果想要对字符串进行更改可以先变为list在操作