python列表

一. 特点:列表是最长用的内置数据类型之一

1. 列表用中括号【】表示

2. 内部元素用逗号,分隔。

3.列表内部元素可支持任意数据类型

 l = ['so','12','$$','A',['sad','fdw']]

二.列表的特性

1.索引

l = ['so','12','$$','A',['sad','fdw']]
print(type(l))
print(l[0])
print(l[-1])
print(l[3])

# 执行结果
<class 'list'>
so
['sad', 'fdw']
A

2.切片

l = ['so','12','$$','A',['sad','fdw']]
print(l[1:])        #从第二个元素开始
print(l[::-1])      #倒序输出
print(l[::])        #输出所有

#执行结果 

['12', '$$', 'A', ['sad', 'fdw']]
[['sad', 'fdw'], 'A', '$$', '12', 'so']
['so', '12', '$$', 'A', ['sad', 'fdw']]

3.重复

l = ['so','12','$$','A',['sad','fdw']]
print(l * 3 )

#执行结果

['so', '12', '$$', 'A', ['sad', 'fdw'], 'so', '12', '$$', 'A', ['sad', 'fdw'], 'so', '12', '$$', 'A', ['sad', 'fdw']]

4. 连接

l = ['so','12','$$','A',['sad','fdw']]
q = ['123','456']
print(l + q)

#执行结果

['so', '12', '$$', 'A', ['sad', 'fdw'], '123', '456']

5. 成员操作符号

l = ['so','12','$$','A',['sad','fdw']]
q = ['123','456']
print('12' in l)
print( '123' in q)

#执行结果

True
True

6.  for 循环遍历

l = ['so','12','$$','A',['sad','fdw']]
#q = ['123','456']
for i in l:
    print(l)

#执行结果

['so', '12', '$$', 'A', ['sad', 'fdw']]
['so', '12', '$$', 'A', ['sad', 'fdw']]
['so', '12', '$$', 'A', ['sad', 'fdw']]
['so', '12', '$$', 'A', ['sad', 'fdw']]
['so', '12', '$$', 'A', ['sad', 'fdw']]

7.嵌套列表

service2 = [['123','abc'],['456','def'],['789','ghi']]

print(service2[1][1])     
print(service2[-1][1])
print(service2[:][1])
print(service2[:-1][0])
print(service2[0][:-1])

# 执行结果


def
ghi
['456', 'def']
['123', 'abc']
['123']

三. 列表的增加

append  增加

extend   拉伸

insert     插入

l = ['12','34','56','78']
print(l + ['90'])
print(l)
l.append('ab')               #追加一个元素到列表中
print(l)
l.extend(['cd','ef','gh'])   #追加多个元素到列表中
print(l)
l.insert(1,'00')             #指定位置插入元素,
print(l)




#执行结果

['12', '34', '56', '78', '90']
['12', '34', '56', '78']
['12', '34', '56', '78', 'ab']
['12', '34', '56', '78', 'ab', 'cd', 'ef', 'gh']
['12', '00', '34', '56', '78', 'ab', 'cd', 'ef', 'gh']

四. 删除

remove  删除指定元素

del         删除关键字,从内存中删除

l = ['12','34','56','78']
l.remove('78')                  #删除指定元素
print(l)


del l                          #s删除列表
print(l)                       #  输出错误,列表l未定义

#执行结果

NameError: name 'l' is not defined
['12', '34', '56']

五. 列表的修改

1.  通过索引,重新赋值

l = ['12','34','56','78']
l[0] = '00'                   #直接通过索引赋值
print(l)
l[:1] = ['11','22']            #通过切片赋值
print(l)


#执行结果 

['00', '34', '56', '78']
['11', '22', '34', '56', '78']

六. 列表的查找

l = ['12','34','56','12','78']
print(l.count('12'))          #查看出现的次数
print( l.index('34'))         #查看指定元素的索引值
print(l.index('12',2,5))      #查看指定元素的索引值,并限定范围

#执行结果

2
1
3

七. 列表的排序

sort 排序在按照 ascli码排列

l = ['12','34','56','12','78','00']
l.sort()                                 #列表排序
print(l)

import random                            #调用随机数
random.shuffle(l)                        #打乱顺序
print(l)


#执行结果

['00', '12', '12', '34', '56', '78']
['78', '56', '34', '00', '12', '12']

八. 列表脚本练习

1.输入月份,判断季节
month = int(input('Month:'))
if month in [3,4,5]:
     print('春季')
elif month in [6,7,8]:
     print('夏季')
elif month in [9,10,11]:
     print('秋季')
elif month in [12,1,2]:
     print('冬季')
else:
    print('输入不合法')




2.
names= ['123','877','1000']
print('+'.join(names[:-1]) + '=' + names[-1])

#执行结果
123+877=1000

脚本:   用户管理系统
1.系统里面有多个用户,用户的信息目前保存在列表里面
    users = ['root','westos']
    passwd = ['123','456']
2.用户登陆(判断用户登陆是否成功
    1).判断用户是否存在
    2).如果存在
        1).判断用户密码是否正确
        如果正确,登陆成功,推出循环
        如果密码不正确,重新登陆,总共有三次机会登陆
    3).如果用户不存在
    重新登陆,总共有三次机会

"""

users = ['root','westos']
passwd = ['123','456']
print('--------用户登录系统---------')
usertime = 0
passtime = 0
while usertime < 3:
    a = input('输入用户名: ')
    if a in users:
        while passtime < 3:
            b = input('请输入密码')
            if b in passwd:
                print('登陆成功!')
                exit()
            else:
                print('密码错误')
                passtime += 1
        else:
            print('三次输入有误,请稍后再试...')
    else:
        print('用户名不存在,请重试.')
        usertime += 1
else:
    print('三次输入有误,请稍后再试.')

脚本:栈的工作

stack = []
info = """
        栈操作
    1.入栈
    2.出栈
    3.栈顶元素
    4.栈的长度
    5.栈是否为空
    q.退出
"""
while True:
    print(info)
    choice = input('请输入选择:')
    if choice == '1':
        item = input('入栈元素:')
        stack.append(item)
        print('元素%s入栈成功' %item)
    elif choice == '2':
        #先判断栈是否为空
        if not stack:
            print('栈为空,不能出栈')
        else:
            item = stack.pop()
            print('%s元素出栈成功' %item)
    elif choice == '3':                        
        if len(stack) == 0:
            print('栈为空')
        else:
            print('栈顶元素为%s' %(stack[-1]))
    elif choice == '4':
        print('栈的长度为%s' %(len(stack)))
    elif choice == '5':
        if len(stack) == 0:
            print('栈为空')
        else:
            print('栈不为空')
    elif choice == 'q':
        print('退出')
        break
    else:
        print('请输入正确的选择')

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值