list 列表 数组

基本用法

stus = ["小何","小黑","小白"]   #list 列表 数组
#索引、下标、角标


stus2 = [] #空的列表
stus3 = list() #空的列表

#增
stus.append("小刘")  #在list的末尾增加一个元素

stus.insert(0,"神仙")   #在指定的位置插入元素

stus.insert(9,"小胖")     #如果指定的下标不存在,会把元素插入到最后

#查
print('单个取',stus[2])
print('最后一个元素',stus[-1])
print("改之前的",stus)

#改

stus[4] = "xxx"
print("改之后的",stus)

#删除
# stus.pop()      #从最后删除元素
# stus.pop(4)     #不能超出元素下标范围
# del stus[0]     #删除指定的位置的元素
# stus.remove("小黑")       #删除指定的元素

#1.list里存在多个一样的元素,那么只会删除一个元素
# name1 = ["小何","小黑","小白","小何","小黑","小白"]
# print(name1)
# name1.remove("小白")
# print(name1)
# #2.不存在的元素,会报错“ValueError: list.remove(x): x not in list“”
# name2 = ["小何","小黑","小白"]
# name2.remove("神仙")
# print(name2)

print("删除之后的",stus)

#其他常用方法

count = stus.count('小白')    #某个运输在list里面的数量
print('count方法',count)
# stus.clear()    #清空list
# print(stus)

new_stus = stus.copy()      #复制一个list
print(new_stus)

stus.reverse()      #反转list
print(stus)


num = [23,234,12,6,54,78,34,1]
num.sort(reverse=True)     #排序,加上reverse=True,自动改为降序
print(num)

stus.extend(num)       #把一个list的元素加入到另外一个里面
# stus.sort()            #sort不支持不同元素的排序“TypeError: '<' not supported between instances of 'int' and 'str'”
print('extend之后的',stus)

resault = stus.index('小何')
print('小何的下标',resault)

resault = stus.index('小小')      #元素不在list里面,会报错“ValueError: '小小' is not in list”
print('小小的下标',resault)


用下面的列子来说明一些列表的用法

import datetime
today = datetime.datetime.today()
usernames = ['test','ceshi','meteor','nova']                    #定义一个list
passwords = ['123456','abc123','qwer1234','1qaz2wsx']            #定义另一个list

#需要校验 用户不存在的话 要提示
#需要校验是否为空

for i in range(3):
    #1.输入账号密码
    username = input('请输入用户名:\n').strip() #去掉两边的空格
    password = input('请输入密码:\n').strip()
    #2.校验是否输入为空
    if username == '' or password =='':
        print('账号或者密码不能为空,请重新输入!')
    #3.校验账号是否存在 list.count()
    #elif usernames.count(username) == 0:
    elif username not in usernames:
        print('账号不存在,请重新输入')
    #4.校验密码 usernames.index()  通过该下标到passwords中取对应的密码
    else:
        num = usernames.index(username)  #根据username名称取到下标
        pwd = passwords[num]             #根据下标取到对应的密码
        if password==pwd:
            print('欢迎%s登录!今天是%s'%(username,today))
            break
        else:
            print('密码错误!')
else:
    print('次数用尽!')

循环取list元素,产生sql语句

# nums = [1,2,3,4,5,['a','b','c','d',['test','dev','pm']]]   #三维数组
#
# print(nums[5][4][1])
#

stus = ['xiaohei','xiaobai','xiaoxiao']

# username = ''
# password = '123456'
# sql = 'insert into user (username,password) value ("%s","%s");'%(username,password)
#

#不要用下面的两种下标取值的方式来循环,效率较低,不建议使用
# index = 0
# password = '123456'
# while index <len(stus):
#     username = stus[index]
#     username = 'szz-'+username
#     sql = 'insert into user (username,password) value ("%s","%s");' % (username, password)
#     print(sql)
#     index+=1

# print(list(range(3)))
# for i in range(len(stus)):
#     username = stus[i]
#     print(username)


password = '123456'

for stu in stus:    #for循环直接循环一个list,就是取list里面的每一个元素
    username = 'szz-' + stu
    sql = 'insert into user (username,password) value ("%s","%s");' % (username, password)
    print(sql)


posted @ 2019-04-18 19:38  狂爷  阅读(1318)  评论(0编辑  收藏  举报