for+range配合使用,切片的使用

各知识点内容补充

- for,range()循环

 - 在for,range()循环内任意地方加break,continue

 - 循环中出现break,是跳出当前循环后,还会运行之后的代码

 - 在for,range()循环中可以嵌套for,range()循环

 - for,range(a,b,c)循环   a代表起始值可取,b是终止值不可取,c代表步长,当a<b时,为正续,正续时c不写默认为1,如果c取值代表步长;当a>b时,为倒叙,倒叙时c为负数,必须写出,-1代表步长为1

#示例
flag=False
for i in range(1,10):
    print(i)
    if flag:
        break    
    for i in range(10,20):
        print(i)
        flag=True
        break    

- 字符串格式化:字符可以用变量替代,百分号后面的括号内元素要用逗号隔开,即使只有一个元素也要加逗号

1 tpl = "我叫%sfdf"
2 a = tpl %('骑兵',)    
3 b= tpl %('步兵',)
4 print(a)

- 变量名称:变量名称不要使用python中已经使用的变量:list,str,tuple,dict,bool,int
- 运算符中的 in 运算

 - 查看'xxx'是否在字符串a,在列表a,在字典a的键中:   b='xxx' in a     #输出b:True/False

- 删除列表,删除字典中的元素时,不能用循环索引出元素进行删除,这样做会影响列表长度,从而报错,可以通过引进新的列表或字典,把需要的值加入新的列表或字典中

注:不要在循环当前字典的过程中,修改当前字典大小

#示例
#删除列表中索引为奇数位的元素
li=[11,22,33,44,55,66]
#方法1:通过新增列表进行取值
new_li=[]
for i in range(0:len(li)):
    if i%2==0:
        new_li.append(li[i])
li=new_li
print(li)
#方法2:用range()倒叙的方法,因为倒叙删除不会影响列表的索引序号
for i in range(len(li)-1,-1,-1):
    if i%2==1:
        del li(i)
print(li)

- 通过切片+步长,删除列表中的元素:del li[a:b:c]   #删除列表li索引位为a到b-1中,步长为c的数

#示例
li = [11, 22, 33, 44, 66] del li[0:len(li):2] print(li) #输出:[11,33,66]

- 索引  v[a:b:c] a代表起始值可取,b是终止值不可取,c代表步长,当a<b时,为正续,正续时c不写默认为1,如果c取值代表步长;当a>b时,为倒叙,倒叙时c为负数,必须写出,-1代表步长为1
- tuple  当元祖内只有一个元素a时,也要用逗号隔开,即v=(a,),否则容易报错

- list与tuple与字符串相互转换

 - 字符串,tuple ==>list      list('aaa')  #print:['a', 'a', 'a']     ;      list(('a','a','a'))=#print:['a', 'a', 'a']  

 - 字符串,list ==>tuple    tuple('aaa')  #print:('a', 'a', 'a')    ;      tuple(['a','a','a'])=#print:['a', 'a', 'a']  

 - list,tuple ==>str     

- 布尔值:False:  0   , []   ,{},   (),   None

 

posted @ 2017-08-22 22:11  JAYWX  阅读(592)  评论(0编辑  收藏  举报