python是强类型语言,字符串和数字连接,他不会自己转化成字符串,因此会报错。 #注释 不要分号结尾
缩进是Python的灵魂,缩进有问题导致程序错误
输入dir(__builtins__)可以查看python所有内置函数 dir(list)#就会返回list列表的所有函数....以此类推哦~~
输入help(input)等会显示该内置函数的意思
input() 》if : else : //缩进是python的灵魂,切记、切记
和C#中字符串@符号一样,python中用r来让字符串默认不区分转义字符
三引号括起来的字符串可以自动帮我们换行等等,即可打印多行字符串.
python也是都是英文符号,中文就会出错,和C#一样
条件分支
1.if 条件:
条件为true执行的操作
else:
条件为false执行的操作
2.while循环
3if --- elif ---else: #(pythoy中用elif代替elseif)
引入外援
random模块
randint(),会返回一个随机的整数
其中最上面import random是引入random模块 #和C#的using差不多意思
第二行是调用random模块中的randint函数(1,10) #生成1到10之间的一个随机整数
类型转换
整型int()
字符串str()
浮点数float()
字节byte()等...
type() #返回类型 type(a)><class 'int'>
isinstance() #返回True和False isinstance(b,float)>True
python也支持+= -= ( /= 》浮点型) .....这些
**为次幂的意思 2**3》8
//是省略小数点后位数的除法 #4//2》2【整型】 4.2//2》2.0【浮点型】
算术运算符的优先级是先乘除再加减,有括号先括号
算书运算符优先级高于比较运算符的优先级
逻辑运算符
and/or/not
pythoy这都可以
循环
1.while
2.for
由此可见print写成print(i,end=',').会打印在一行切每个以end中的字符串来分割开,len()计算长度
for 和js中for很像
range()
经常和for一起用
#不包括最后一个参数值
和for一起用 切记range(2,9)是不包含9,就是不包含最后一个数字的,只有一个参数,默认从0开始
break #终止循环
continue #跳过本次循环
列表:一个打了激素的数组
创建列表
创建列表》》
向列表添加元素
1.append() #只能接受一个参数 向列表后插入
2.extend() #使用一个列表来扩展另一个列表,它只能接受一个参数且为列表 向列表后插入
》》如果少的话这样写就可以
3.insert(列表中的位置索引,插入的元素)
列表获取元素 #通过索引
列表删除元素
1.remove(元素名) #arr.remove('小甲鱼')只会删除第一个匹配项。 如果没有这个元素名,会报错!
2.del() #del arr[1] del arr#删除整个列表,把列表从内存中剃掉
3.pop() #arr.pop() #删除并返回最后一个元素 arr.pop(1) #删除并返回该索引的元素
列表分片(slice)
拷贝原列表中的一段元素返回一个新列表
arrNew=arr[1:] #从arr列表截取从索引值1开始到最后,返回一个新列表arrNew,对arr无影响
arr[:] #得到一个arr列表的拷贝!!!
列表之间比较是默认从第0个索引开始比较,只要有一个PK赢了,后面就不会比较【就是理解成就是第0个索引之间比较】
+ #列表也可以拼接(加号两边对象类型必须是一样的)
* #list3复制3次并返回新列表
in #检查列表是否有此元素
in只能检查一层,即我现在检验这个列表,就检验这个列表直接元素有没有我检查的这个元素,即使列表的元素中包含这个元素也不会返回True
列表的小伙伴们
列表的内置方法
count(元素名) # 检查该元素名在该列表中出现的次数
index #返回该元素在列表中的位置
index(元素,起始搜索位置,结束搜索位置) #只会返回范围内第一个匹配项索引
reverse #原地翻转
list3.reverse()
#func制定算法 key和算法搭配的关键字
sort(reverse=True) #从大到小
通过列表分片得到的list3相当于取走了list1的数据,在自己的天地里不受list1的干扰,而list2和list1是引用类型的意思,指向同一块内存地址,因此list1变化,list2也会变化,而list3则不会
由此可见拷贝分片的重要性
拷贝的时候要用分片的方法!!!切记切记!!!!!