码迷,mamicode.com
首页 > 其他好文 > 详细

数据类型补充

时间:2018-01-24 16:54:10      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:第一个   条件   nbsp   bsp   更改   元素   for   let   内容   

1 . 字符串 .join方法

可以在一段字符串每个元素后加一个指定的元素

s = alexeweuesir\n
s1 = "_".join(s)#把"_"元素加进去
s2 = ‘‘.join(s)#添加个空元素 相当于不变
print(s1+s2)

结果:

技术分享图片

2 . for else使用 :  for else 和while else基本相同,当都执行完以后走else.

s = alexeweuesir
for i in s:
    if i == e:#判断i是否取到"e"
        continue #跳过循环,开始下一次循环
    print(i)
else:             #当for循环都执行完以后,开始执行else,但是如果循环被break打断就不执行else
    print(666)

结果:

技术分享图片

3 . 字符串练习题

实现一个整数加法计算器:实现5  +9 或  5  +  9    或 5  +9  的输出

content = input("请输入内容:")
sum = 0
content = content.split("+")  #以"+"为切割点,把str分为list
for i in content:                      #遍历list中元素
    sum = sum + int(i)            #将元素类型改为整数int,并累加
print(sum)

结果:

技术分享图片

计算用户输入的内容中有几个整数。如输入safsah66afa5中有几个数字

content=input("请输入:")
count =0
for i in content:    #遍历content中元素
    if i.isdigit():        #判断元素是否为数字
        count+=1        
print(count)

结果:

技术分享图片

 4. 列表的增删改查

  增.append方法 是在列表最后添加元素的,元素可以为任何类型.

l1 = [alex,True,wusir,ritian,taibai,3,2]
#增 append
l1.append(小黑)        #添加字符串
l1.append([1,2,3])     #添加个列表
print(l1)

结果:

 技术分享图片

 

 小练习  在列表中添加元素,遇到"Q"或"q"退出,最后打印列表

l1 = [alex,True,wusir,ritian,taibai,3,2]
while True:
    username = input(>>>/Q或q退出)    # 用户交互
    if username.upper() == Q:break        #判断跳出循环条件
    l1.append(username)                           #将新元素添加到列表
print(l1)

结果:

技术分享图片

  插入 .insert  通过索引来添加元素,这个位置是可以自己决定的.没有返回值

l1 = [alex,True,wusir,ritian,taibai,3,2]
#insert 插入
l1.insert(2,egon)   #在索引为2的位置添加个元素
print(l1)

结果:

技术分享图片

 

   expend  迭代的添加,把字符串或列表拆开添加,,没有返回值

l1 = [alex,True,wusir,ritian,taibai,3,2]
# extend
l1.extend(太白金星)           #添加元素
print(l1.extend([2,3,4]))      #添加数据 并输出返回值
print(l1)

结果 :

技术分享图片

  删除 

 .pop删除  通过索引删除元素, 默认删除最后一个元素,并且有返回值.

l1 = [alex,True,wusir,ritian,taibai,3,2]
#删除pop
l1.pop() #默认删除最后一个
ret = l1.pop(4)  #删除索引为4的数据
print(ret)  # 有返回值
print(l1)

 结果:

技术分享图片

  .remove删除,按照元素删除,没有返回值.

l1 = [alex,True,wusir,ritian,taibai,3,2]
# remove 按照元素去删除
ret = l1.remove(alex)
print(ret)
print(l1)

结果:

技术分享图片

清空列表 .clear  但是列表还是存在的,

 l1 = [alex,True,wusir,ritian,taibai,3,2]
#clear  清空列表
l1.clear()
print(l1)

结果:

技术分享图片

删除列表.del方法,列表被彻底删除.还可以用索引和切片删除.

l1 = [alex,True,wusir,ritian,taibai,3,2]
# del  功能1 删除列表
del l1
print(l1)

结果:

技术分享图片

 

l1 = [alex,True,wusir,3,2,4,5,ritian,taibai,3,2]
del l1[0]   #删除第一个元素
print(l1)
del l1[0:3]  #在第一次基础上删除索引为0到2的元素
print(l1)
del l1[1::2]  #在第二次基础上,从索引为1的元素到最后按步长为2删除
print(l1)

.del  索引,切片删除

 技术分享图片

  改 按照索引和切片去改:

l1 = [alex,taibai,True,wusir,ritian,3,2,True,]
# #改
# 按照索引去改
l1[0] = 男神‘                       #用"男神"替换索引为0的元素
print(l1)
# 按照切片去改
l1[0:2] = [屌丝,alex]           #列表添加元素
print(l1)
l1[0:2] = 化工哥,树脂‘               #字符串遍历添加
print(l1)
l1[0:2] = (化工哥,树脂)             #元祖遍历添加
print(l1)
l1[0:2] = {"化工哥":"树脂","guu":82}  #字典添加键值,并且无序
print(l1)

结果:

技术分享图片

  查 用索引查 和用for循环查

l1 = [alex,taibai,True,wusir,ritian,3,2,True,]
# 查 按切片,按索引去查
print(l1[0])     #输出索引为0的数据
print(l1[0:3])   #输出索引在0到2的数据
l1 = [alex,taibai,True,wusir,ritian,3,2,True,]
for i in l1: # for 循环查print(i)

 结果:

技术分享图片

    5.  长度 和 查找数据出现次数   补充列表中True也表示1

l1= [1,3,6,8,7,4,True,9,10]
# len 长度  数据个数
print(len(l1))
# count 出现次数
ret = l1.count(True)
print(ret)

结果:

技术分享图片

  6.  通过元素找索引,找不到会报错

l1= [1,3,6,8,7,4,True,9,10]
# index 通过元素找索引
print(l1.index(8))  #找"8"这个元素的索引

print(l1.index(0))

结果:

技术分享图片

   7. 如果列表中数据是纯数字的话还可以进行排序,sort 从小到大  ,sort(reverse) 从大到小

l1= [1,3,6,6,8,7,4,0,9,10]
# sort 从小到大
l1.sort()
print(l1)
#sort(reverse)  从大到小
l1.sort(reverse=True)
print(l1)

结果:

技术分享图片

   8. 列表内元素反转,

l2=["a",1,5,"p"]
#倒叙
l2.reverse()
 print(l2)

结果:

技术分享图片

  9.  列表的嵌套 能实现增删改查

l1 = [‘小新‘,‘egon‘,‘wusir‘,[99,‘tiabai‘,‘ritian‘,[1,2,3]],2]
a = l1[1].capitalize()
l1[1] = a
l1[1] = l1[1].capitalize()
print(l1)

结果:

技术分享图片

查找数据

l1 = [小新,egon,wusir,[99,tiabai,ritian,[1,2,3]],2]
print(l1[0])
print(l1[3])

结果:

技术分享图片

将一个元素字母全变大写

l1 = [小新,egon,wusir,[99,tiabai,ritian,[1,2,3]],2]
l = l1[3]
s = l[1].upper()
l1[3][1] = s
l1[3][1] = l1[3][1].upper()
print(l1)

结果:

技术分享图片

 

   10.  元祖  元祖的索引查找和for循环   元祖内的数据是不可更改的,但是嵌套列表或字典时,列表内或字典里的数据能改变

tu = (1,2,wusir,taibai,[2,3,4,],True)
for i in tu:
    print(i)
print(tu[2:])

结果:

技术分享图片

  11. range当做:范围列表[],列表中的元素是数字,且可控的有效数字范围 一般与for循环连用

从一到十取数据

for i in range(1,10):  #[1,2,3,4...9]  顾首不顾尾
  print(i)

结果:

技术分享图片

for i in range(1,10,2):  # [1,3,5,7,9]
    print(i)

结果:

技术分享图片

 

 倒序输出数字

for l in range(3,-2,-1):
    print(l)

结果:

技术分享图片

应用  依次输出例表中元素 如果元素内有列表,把子列表中元素也遍历输出

 l1 = [1,2,3,‘alex‘,[2,3,‘wusir‘],7] for i in l1:     if type(i) == list:         for j in i:             print(j)     else:        print(i)

结果:

技术分享图片

   12. Python pass是空语句,是为了保持程序结构的完整性。pass 不做任何事情,一般用做占位语句。

# 输出 Python 的每个字母
for letter in Python:
   if letter == h:
      pass
      print 这是 pass 块
   print 当前字母 :, letter

print "Good bye!"

结果:

技术分享图片

 

  

数据类型补充

标签:第一个   条件   nbsp   bsp   更改   元素   for   let   内容   

原文地址:https://www.cnblogs.com/wzbk/p/8341993.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!