菜鸟养成第5集

浮点数相加最好不要直接判断,经过round处理后再判断

比如在idle设置        0.1 + 0.2 == 0.3 (False)

原因是二进制存储导致末尾可能不同,round(0.1+ 0.2, 2) == 0.3  (True)

复数表示法:complex

complex(1,2) -->1+2j

//向左取整

-3//2-->-2

python所有字符都是以字符串存在的

+连接字符串,且只能和字符串类型相加,其他类型会报错,不同类型也不可以比较

*复制字符串

3<5>2 等价于 3<5 and 5>2

求幂运算从右向左结合

int("     35")>>>35

int("    3     5")>>>error

多变量赋值

x,*y ="abc"

print(x)>>>a

print(y)>>>['b','c']

区分

x, ="ab"

print(x)>>>a

print(y)>>>b

python自带sum函数

result = sum(list(range(0,n)))

或者借助第三个变量

累乘的话,并没有一个这样现成的函数,所以需要借助第三个变量

列表推导式

想要运行时间短,用列表解析求和程序。想要占有空间少,用 for 语句求和程序。

列表支持加法、乘法、比较、索引、切片等

在列表推导式中有几种添加if条件的方法。

方式1: 起过滤作用

[expr(x) for x in li if cond(x)]

方式2: 作为三元表达式使用,满足条件将其作expr1处理,不满足做expr2处理

[expr1(x) if cond(x) else expr2(x) for x in li]

format使用

个人通俗化理解,{}内是想要数据展示出的格式,加.format就是让format内的变量按照花括号内的格式输出。

菜鸟养成第5集_第1张图片

(图片来自浙大pythonmooc)

format函数产生的结果是字符串!

int函数不可转换以小数表示的字符串

即int(10.3)-->error

某字符是否在字符串内

'3' in "123"

'3' not in "123"

只能判断一个元素

%格式化输出

(1)

print('I am %d years old.' % 26)

print('I am %d years old and weight is %d kg.' % (26, 57))

>>>

I am 23 years old.
I am 23 years old and weight is 57 kg.

如果

print('I am %d years old and weight is %d kg.' % 23, % 57)>>>error

(2)

print('I am %.1f years old.' % 23.535)>>>I am 23.5 years old.

你可能感兴趣的:(菜鸟养成记,python)