列表

说明:列表是python中的基础数据类型之一,它是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:
 
1
li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}] 
列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据。列表是有序的,有索引值,可切片,方便取值。
 索引,切片,步长
li = ['xiao',123,True,(1,2,3,'wusir'),[1,2,3,'小明',],{'name':'xiao'}]
print(li[0])
print(li[2])
print(li[1:4])
print(li[:5:2])
#倒着取,后2个
print(li[-1:-3:-1])

元祖

=====上述学习内容后续待完成=====

=====学习作业练习=====

li = [‘alex’,’wusir’,’eric’,’rain’,‘alex’]
1. 计算列表的长度并输出

print(len(li))

2.列表中追加元素’seven’,并输出添加后的列表

li = ['alex','wusir','eric','rain','alex']
li.append('seven')
print(li)

3.请在列表的第1个位置插入元素’Tony’,并输出添加后的列表

li.insert(0,'Tony')
print(li)

4.请修改列表第2个位置的元素为’Kelly’,并输出修改后的列表

li[1] = 'Kelly'
print(li)

5.请将列表l2=[1,’a’,3,4,’heart’]的每一个元素添加到列表li中,一行代码实现,不允许循环添加。

l2 = [1,'a',3,4,'heart']

6.请将字符串s = ‘qwert’的每一个元素添加到列表li中,一行代码实现,不允许循环添加。

#使用迭代添加
l2 = [1,'a',3,4,'heart']
#方法一:
li.append([1,'a',3,4,'heart'])
#方法二:
l3 = li.copy() + l2
print(l3)
#方法三:
li.extend(l2)
print(li)

7.请删除列表中的元素’eric’,并输出添加后的列表

s = 'qwert'
li.extend(s)
print(li)

8.请删除列表中的第2个元素,并输出删除的元素和删除元素后的列表

li.pop(2)
print(li)

9.请删除列表中的第2至4个元素,并输出删除元素后的列表

p = li.pop(1)
print(p,"\n",li)

10.请将列表所有得元素反转,并输出反转后的列表

del li[1:4]
print(li)

11.请计算出‘alex’元素在列表li中出现的次数,并输出该次数。

li.reverse()
print(li)  
二, 写代码,有如下列表,利用切片实现每一个功能
li = [1,3,2,'a',4,'b',5,'c']

  1.通过对li列表的切片形成新的列表l1,l1 = [1,3,2]

l1 = li[0:3]
print(l1)

  2.通过对li列表的切片形成新的列表l2,l2 = [’a’,4,’b’]

l2 = li[3:6]
print(l2)

  3.通过对li列表的切片形成新的列表l3,l3 = [’1,2,4,5]

l3 = li[::2]
print(l3)

  4.通过对li列表的切片形成新的列表l4,l4 = [3,’a’,’b’]

l4 = li[1:6:2]       #1 起始位置,6为结束元素位置,2是步数
print(l4)

  5.通过对li列表的切片形成新的列表l5,l5 = [‘c’]

l5 = li[-1]
print(l5)

  6. 通过对li列表的切片形成新的列表l6,l6 = [‘b’,’a’,3]

li = [1,3,2,'a',4,'b',5,'c']
l6 = li[-3:-8:-2]
print(l6)

三,写代码,有如下列表,按照要求实现每一个功能。
lis = [2,3,‘k’,[‘qwe’,20,[‘k1’,[‘tt’,3,’1’]],89],’ab’,’adv’]
  1.将列表lis中的’tt’变成大写(用两种方式)。

a = lis[3][2][1][0] #(临时草稿)

lis[3][2][1][0] = 'TT'   ###一个个元素位置去拆分取值并替换
lis[3][2][1][0] = lis[3][2][1][0].upper()
print(lis)

  2.将列表中的数字3变成字符串’100’(用两种方式)。

lis = [2,3,'k',['qwe',20,['k1',['tt',3,1]],89],'ab','adv']
lis[1]='100'
# print(lis)
#a = lis[3][2][1][1]
lis[3][2][1][1] ='100'
print(lis)

  3.将列表中的字符串’1’变成数字101(用两种方式)。

lis = [2,3,'k',['qwe',20,['k1',['tt',3,1]],89],'ab','adv']
#a = lis[3][2][1][2]
lis[3][2][1][2] = '101'
print(lis)

 方法二:

lis[3][2][1][2] = int(lis[3][2][1][2]) + 100
print(lis)
四,请用代码实现:
# 利用下划线将列表的每一个元素拼接成字符串"alex_eric_rain"
li = ['alex','eric','rain']
s = '_'.join(li)
print(s)

五,查找列表li中的元素,移除每个元素的空格,并找出以’A’或者’a’开头,并以’c’结尾的所有元素,并添加到一个新列表中,最后循环打印这个新列表。

li = ['taibai',' alexC',' AbC','  egon','   Ritian','  Wusir','  aqc',' ahjhc','auwenfc']
s1 = []
# s = ['A','a']
#
for i in li:
#print(i.strip())
s = i.strip()
#print(s)
if s.startswith('A') or s.startswith('a'):
#print(i.strip())
#print(s.strip())
if s.endswith('c'):
s1.append(s.strip())
for j in s1:
print(j)

 

python全栈学习--day4的更多相关文章

  1. python全栈学习路线

    python全栈学习路线-查询笔记 查询目录 一,硬件                                                                    十一,数据 ...

  2. python全栈学习--day3

    一.基础数据类型 基础数据类型,有7种类型,存在即合理. 1.int 整数 主要是做运算的 .比如加减乘除,幂,取余  + - * / ** %...2.bool 布尔值 判断真假以及作为条件变量3. ...

  3. python全栈学习--day2

    一.in的使用 说明:in有相当多的用处,比如判断,循环for 等. 实例一:in 操作符用于判断关键字是否存在于变量中 s = '男人john' print('男孩' in s) print('男孩 ...

  4. python全栈学习--day1

      计算机基础 CPU:中央处理器 内存:4GB,8GB,临时处理事务的地方,供给CPU数据. 硬盘:相当于电脑的数据库,存储着大量的数据,文件,电影等. 操作系统:执行者,支配所有关系 window ...

  5. Python全栈学习_day002知识点

    今日大纲: . while循环 . 格式化输出 . 运算符 . 编码初识 1. while循环 - while 无限循环: while True: # 死循环 print('大悲咒') print(' ...

  6. Python全栈开发day4

    1.python三元运算 实现方法: result = 值1 if 条件 else 值2 例如: 1 2 3 4 #!/bin/env python #-*- coding:utf-8 -*- nam ...

  7. python全栈开发-Day4 列表

    python全栈开发-Day4 列表 一.首先按照以下几个点展开列表的学习 #一:基本使用 1 用途 2 定义方式 3 常用操作+内置的方法 #二:该类型总结 1 存一个值or存多个值 只能存一个值 ...

  8. python全栈学习--day11(函数高级应用)

    一,函数名是什么? 函数名是函数的名字,本质:变量,特殊的变量. 函数名()执行此函数 ''' 在函数的执行(调用)时:打散. *可迭代对象(str,tuple,list,dict(key))每一个元 ...

  9. python全栈学习--day10(函数进阶)

    一,引言 现在我有个问题,函数里面的变量,在函数外面能直接引用么? def func1(): m = 1 print(m) print(m) #这行报的错 报错了:NameError: name 'm ...

随机推荐

  1. MongoDB的安装和配置(Windows系统)及遇到的常见问题解答

    目前比较流行的数据库大致可以分为三种: 前两种是按照图论理论建立起来的,分别是: 层次式数据库(IMS(Information Management System)是其典型代表)和 网络式数据库(DB ...

  2. 使用promise方式写settimeout

    //使用promise方式写settimeout, //好处就是用于写动画的时候只需知道后一个的动画在前一个动画结束后多久执行 console.time('settimeout:');//开始计算这段 ...

  3. 用.Net Core控制台模拟一个ASP.Net Core的管道模型

    在我的上几篇文章中降到了asp.net core的管道模型,为了更清楚地理解asp.net core的管道,再网上学习了.Net Core控制台应用程序对其的模拟,以加深映像,同时,供大家学习参考. ...

  4. The Moving Points HDU - 4717

    There are N points in total. Every point moves in certain direction and certain speed. We want to kn ...

  5. java类型转换详解(自动转换和强制转换)

    自动转换 class Hello { public static void main(String[] args) { //自动转换 int a = 5; byte b = 6; int c = a ...

  6. eclipse -解决Unhandled event loop exception GC overhead limit exceeded

    今天第一次遇到这个问题, 拿出来和大家分享一下. 首先说明下我发现这个错误的过程,  看下面的三张图片 1,在本地weblogic发布项目的时候 2 , 等待一段时间, 出现以下错误 3 ,  点击上 ...

  7. 【BZOJ2882】工艺(后缀自动机)

    [BZOJ2882]工艺(后缀自动机) 题面 BZOJ权限题,良心洛谷 题解 还是一样的,先把串在后面接一遍 然后构建\(SAM\) 直接按照字典序输出\(n\)次就行了 #include<io ...

  8. LVS-NAT模式的配置详解

    由于实验室拟态存储的项目需要通过NAT模式来映射NFS服务器已实现负载均衡的目的,通过调研了多种负载均衡机制,笔者最终选择了LVS的NAT模式来实现需求,接下来通过博客来记录一下LVS-NAT模式的配 ...

  9. webpack深入场景——开发环境和生产环境配置

    以前自己写一小项目时,webpack的配置基本就是一套配置,没有考虑生产环境和开发环境的区分,最近在做一个复杂的商城项目接触到了webpack的高级配置,经过两天的研究,写出了一份目前来说比叫满意的配 ...

  10. 微信小程序初探【类微信UI聊天简单实现】

    微信小程序最近很火,火到什么程度,只要你一打开微信,就是它的身影,几乎你用的各个APP都可以在微信中找到它的复制版,另外官方自带的跳一跳更是将它推到了空前至高的位置.对比公众号,就我的感觉来说,有以下 ...