所谓双鱼

导航

 

1、数组与字符串

     1)list属于可变变量,里面的值可以修改

         string属于不可变变量,里面的值不可修改

例如我想把某个字符串的字符给修改替换

info = '你好,今天天气有雨'
info[2]='啊'
print(info)

结果如下:

 

info[2]=''
TypeError: 'str' object does not support item assignment   会报错

 

2)数组与字符串使用for循环

字符串使用for循环,循环字符串每个字符

words = 'emily,emily1,刘佳,刘佳1'
for name in words:
    print(name)

结果如下:

e
m
i
l
y
,
e
m
i
l
y
1
,
刘
佳
,
刘
佳
1

是循环字符串每各字符,一个个取出

数组使用for循环,循环里面每个元素

lists = ['emily','emily1','刘佳','刘佳1']
for name in lists:
    print(name)

结果如下:

emily
emily1
刘佳
刘佳1

2、多维数组练习

lists1 = ['测试','生日','刘佳','工程师',[1,2,3,4]]
for name in lists1:
    if type(name)==list:
        for i in name:
            print(i)  
    print(name)

结果如下:

测试
生日
刘佳
工程师
1
2
3
4
[1, 2, 3, 4]

3、练习:

stus=[
['小明','未交'],
['小白','已交'], ['小紫','已交'],
['小红','未交'], ['小绿','未交'],
['小黄','未交'], ['小黑','已交']
]
pass_list = []#所有已经交作业的同学
fail_list = []#没有交作业同学的名字
stus=[
      ['小明','未交'],
      ['小白','已交'], ['小紫','已交'],
      ['小红','未交'], ['小绿','未交'],
      ['小黄','未交'], ['小黑','已交']
    ]
pass_list = []#所有已经交作业的同学
fail_list = []#没有交作业同学的名字

for name in stus:
   if name[1]== '已交':
      pass_list.append(name[0])
   else:
      fail_list.append(name[0])
print('已交作业的同学是:%s'%pass_list)
print('未交作业的同学是:%s'%fail_list)

stus=[
      ['小明','未交'],
      ['小白','已交'], ['小紫','已交'],
      ['小红','未交'], ['小绿','未交'],
      ['小黄','未交'], ['小黑','已交']
    ]
pass_list = []#所有已经交作业的同学
fail_list = []#没有交作业同学的名字
for stu in stus:
    status = stu[1]
    name = stu[0]
    if status == '已交':
        pass_list.append(name)
    else:
        fail_list.append(name)
print('已交作业的同学是:%s'%pass_list)
print('未交作业的同学是:%s'%fail_list)

输出结果都是:

已交作业的同学是:['小白', '小紫', '小黑']
未交作业的同学是:['小明', '小红', '小绿', '小黄']

4、元组

1)元组也是一个list,它和list的区别就是元组里面的元素不能修改(增,删,改)

2)元组的类型:

t = (1,2,34,45,12,34)
print(type(t))

输出结果是:

<class 'tuple'>

3)元组的查询与list相同

for i in t:
    print(i)

输出结果为:

1
2
34
45
12
34
t = (1,2,34,45,12,34)
print(t[::2])

输出结果为:

(1, 34, 12)
t = (1,2,34,45,12,34)
t[1]=90
print(t)

输出结果会报错,提示元组并不能修改元素

t[1]=90
TypeError: 'tuple' object does not support item assignment

4)相似写法的不同类型

t = (1,2,34,45,12,34)
word = (1)
word2 = ('abc')
print(type(t))
print(type(word))
print(type(word2))

结果是:

<class 'tuple'>
<class 'int'>   
<class 'str'>

看一和二,如果给word这个加一个逗号

t = (1,2,34,45,12,34)
word = (1,)
word2 = ('abc')
print(type(t))
print(type(word))
print(type(word2))

输出结果就不同了

<class 'tuple'>
<class 'tuple'>
<class 'str'>

也就是说如果元组里面只有一个元素的话,那么你必须在这个元素后面加一个逗号。

5)元组找元素下标与个数

元组找元素下标和个数与list相同

t = (1,2,34,45,2,34)
print(t.index(2))#找到元素的下标
print(t.count(2)) #找到元素的个数

结果为:

1
2

 

posted on 2018-03-27 22:34  所谓双鱼  阅读(241)  评论(0编辑  收藏  举报