python3 最基础

 python 2乱码,源码混了,代码重复,ascii码  一个字节表示  显示中文 只有英文
      python 3 utf-8  三个字节 表示中文 
    int  整型  str 字符串 类型   bool 布尔值 True  False   
    运算符:
    逻辑运算:not and  or  
    比较运算:<  >  = 
    赋值运算;*= -=  += //=  %=
    算法运算:- + * **  / 
    成员运算: in   not in  
     
 if  语句 
 if 条件:
    结果
if  条件:
    结果
else: 二选一

if  
elif;(在如果)
elif:(在如果)

while 条件: 
        循环体
  while :
  else:
  
  
  while  :
    if:
      if:
       if: 
       嵌套型语句

 () not  and   or 依次优先
not  1>2 and 3 or  3 and  5>6 or  3   结果为 3
索引 
元素的下表
例  s = "dsfdsg"  从左向右数 零开始   从 右向左  -1 -2 -3 负一开始  
当你准确取某一个元素时  减一    
s1 = s[0]
则 s1 = d 
前片  
s2 = s[1:2:2] 分号的顺序依次是 起点终点 步长   [-4:-1:1] 输出结果 为左到右  要是从右到左的话 在步长前加一个负号  [头减一 :尾不变] 步长 开始位置后数起
字符串的表示
变量名.swapcase()大小写转化  当也有一个人大写时全部转化为大写
变量名.upper()表示全部大写
变量名.lower()表示全部小写
变量名.capitalize()表示首字母大写
变量名.starswith('')判断以什么开头 输出Boolz值
变量名.endswith('')判断以什么结束输出bool
变量名.split('')表示分割
变量名.replace('老东西','旧东西')替换 
len(变量名)取长

name = " aleX leNb "
n = name.strip()
n  =  n.find('e') 下标为2
n = n.find('e',3)  从位置去找 3第个位置起  下标 为6

变量名.find('元素'),查下标 没有的输出 -1
变量名.index('元素')查下表 没有的报错 
变量名.isdigit()判断是不是纯数字,输出bool值
变量名.count('元素')统计出现的次数
n = n.count('l',1,5)  #count 可以切片去找
   例 s = 'dafdg'
   print('_'.join(s)) 下划线  等
   d_a_f_d_g



变量名.strip()表示默认删除空格与换行符\n      变量名.strip('')表示删除''里的内容   +++不能用在列表后边  

list 列表 []



'增删改查'
增

li = [1,2,3,'nihao','n','你好啊']

li.append('对了')#只能 在后边添加
print(li)

li.insert(0,'gg')#根据索引来添加,是没有默认在后边添加的
print(li)

li.extend('qwer')#把 qwer拆分开  分别加到列表后边,只能有一个''的内容
print(li)

删
li.pop(1)#按索引删除,不能切片删除,
print(li.pop(1))#有返回你要删除的元素

del li#删除整列表
print(li)

del li[1:3]#按切片切忘记了.就长这样的
print(li)
li = [1,2,3,'nihao','n','你好啊']

li = li.clear()#输出 None没有用内容 表示已经清空
print(li)

li.remove('你好啊')# 按元素删除 ,移除的意思
print(li)

改
li[1] = '替换内容'
li[1] = [123,'大宝哥']#列表嵌套列表
print(li)

li[0:3] = 'dasfggdfh'#把字符串改成字符放进去
print(li)
li[0:3] = ('练啊','人才','胸带')#一个位置一个的放进去()与[]是一样的,('练啊','人才','胸带')等于['练啊','人才','胸带']
print(li)

li = [1,2,3,'nihao','n','你好啊']


查

li = li[2]#索引查找
li = li[1:4]#切片查找
for i in li :
    print(i)

print(li[3])




公用方法 数字列表排序
li = [1,23,4,6,9,4,2,]
li.sort()#不能写成li =li.sort(),否则输出None.正向排序
print(li)
li = li.sort()#输出None
print(li)

逆向排序
li.sort(reverse=True)#把里边的False改为True
print(li)

反转
li.reverse()#把li反过来
print(li)

元组 uplit   只读  不可更改,    元组里的列表可以改  (儿子不能改,孙子可以改)

li = ('ho','gg',1,3,['cp',75],689,0)
print(li[4][0][1])#找出p
只能查,孙子可改的跟列表一样
数字元组(1,100)表示1234567...100  用range
for i  in  range(1,88,2):   #有步长
    print(i)

for i  in  range(0,10,2):#偶数
    print(i)
for i  in  range(1,10,2):#奇数
    print(i)
for i  in  range(1,88,2):

不可变数据型 列如 bool 元组  int   str
字典 用二分法  可以存储大量的数据
dic1 = {'name':'beibi','age':'18','sex':'male'}#键值对
有增删查改
增
dic1['big']= 66 #直接加入键值对.不重复的话直接加入,重复的话直接覆盖
print(dic1)
dic1['name']='gegu'
print(dic1)
用setdefault 去添加.好处是原有的不会被覆盖
dic1.setdefault('name',88)#(键,值)当没有值的时候默认值为None
print(dic1)

dic1 = {'ka':'v1','k2':'v2','ae':'66'}
n = dic1['ka']#输出来的是键对应的值  ka:v1  是一对 所以输出的是 v1 
print(n)
#


删 一#删,一样都是用pop
dic1.pop('name')#有返回值  ('键'),当键不存在的话报错 可以改为这样('键','提示语')
print(dic1)

print(dic1.pop('n','不存在'))

dic1.clear()#清空字典{}
print(dic1)

del dic1#删除整个字典
print(dic1)

del dic1['name']#按键删除 键值对
print(dic1)

改   覆盖
dic1['name'] = 14  #直接覆盖了

字典更新  把一更新到原来的
dic1 = {'age':'18','name':'jon','sex':'male',}
dic2 = {'name':'jgv','age':'8','weight':'66',}
dic2.update(dic1)
# print(dic1)
print(dic2)
把一更新到二中  爬虫时用
b1 = 'alexgdgj'
b2=b1.upper().replace('E','o',1).capitalize().split('o')
print(b2)
name = ' 1 + 2 +3+4+5  +6+ 7'
b = name.strip().split('+')
print(b)
格式化输出
format
变量名.format('','','')
s2 = 'fdsa,{2}  {1} {0}'
print(s2.format('','不爱','你猜  ','佛挡  杀佛'))格式化输出的下标  一个逗号隔开来数

  输出 e 的下标

name = " aleX leNb "
n = name.strip()
c = 0
for i in n:
    print(i)
    if i =='e':
        print(c)
    c +=1

 

posted @ 2019-01-01 18:44  LmtMe  阅读(163)  评论(0编辑  收藏  举报