1、表达式与if语句
赋值语句: x = 5 : = 是赋值 。 相对其他语言相对方便一些。(x , y) = (1 , 10) , 也可以去掉括号,直接给元组赋值
只要两边的数量是相等的,赋值的话很简单,那要是两个变量不相等的话,相对麻烦一些。a,b,c = 'uke' 输出的是abc对应一个字符。
a,b,c = 'vincent' 。这样直接赋值的话会报错,那我可不可以讲v放再a上,i放再b上,然后后面所有的值放再c上呢?我们可以这样写 s = 'vincnet' a,c,b = s[0],s[1],s[2:] 这个时候就可以赋值了,我们使用切割一下就行。但是它会提供更好的方式,
a,b,*c = s : 前面呢额挨个赋值!但是到C的时候,全部给我,这个叫扩展序列解包赋值。最后的c是一个list类型的!
思考:a,b,c,d = 'vin' 这样少的话会怎么样呢??报错, 这样写呢?a,b,c,*d= ‘vin’ 。 这个d显示的类型的一个空列表。
多目标赋值:就是我们声明一个值,把他塞给多个变量。
a,b,c = 'vin' ; 让a = 'vin' b = 'vin' c = 'vin' 。 我们可以这样写。 a = b = c = 'vin'.
现象: a = 'vin' b = 'vin' a is b 返回true 。 a = 'vinc' b = 'vinc' a is b 返回true
但是a = 'www.baidu' b = 'www.baidu' a is b 就是一个false :为什么呢?跟数组是同样的道理,在缓存中,会缓存小的字符串的值。默认的是3个。四个的话引用就不一样了!
‘is’ 是比较1.内容相同。2.内存中地址相同 。
列表引用 , a = b = [] 。 a.appen(3) 这个时候a = 3 , b = 3 。 但是我想让a和b分开,也可以, 我们可以使用序列赋值,a ,b = [],[] 这样就可以分开了! a和b互不想干。
a += b 与 a = a + b 是一样的效果。也可以操作列表! 但是是听过链接的方法
表达式: 就是函数调用和方法调用,打印操作等,
print的使用。s = 'www' s1 = 'baidu' s2 = '.com' print(s,s1,s2,sep('|'),end = '..\n') 。这句话的意思就是 打印s,s1,s2 ,然后以 | 分割,最后以 .. 结尾。 如果想要输出到一个文件中,就在最后面加上file= open('result.txt','w',encoding='utf8'))。整体是这样
print(s,s1,s2,sep('|'),end = '..\n',file= open('result.txt','w',encoding='utf8')) 。
流程控制:就是一个if while for循环三种:
if中: 这里面只需要主要python的缩进就行跟java一样。else if 在python中的表示是elif。 要注意一个三元表达式的写法: result = '及格' if score >= 60 else '不及格' 。 这句话比较怪异! 就是如果条件成立!就执行左边的! 如果条件不成立! 就执行右边的! result = Y if X else Z ! 如果X成立!就返回Y! ,如果X不成了立,就返回Z。
while中:循环中的关键字: break:从整个循环中跳出。
continue:跳出这一步循环进行下一次循环。
pass:是一个占位符,想留下位置的时候使用这个
else:循环体的一部分,嘉定有条件不满足就执行else
for 循环: for x这是一个临时变量 in 目标序列 这是语法
记住 range(1,100) , 生成1 -100之间的函数。 但是不包含100 。 如果想要隔一个打印一下! 那就最后面设置一个步长来设置。
enumerate() : 函数。可把帮我们获取并且打印出目前正在循环的第几个!