2021.3.8学习总结

一、List

1.什么是列表
  • 列表是容器型数据类型:将[]作为容器标志,里面多个数据用逗号隔开:[元素1,元素2元素3,····]
  • 列表是可变的(可变指的是元素的个数可变;元素的值可变;元素的顺序可变)
  • 列表是有序的(每个元素都有一个表示元素位置信息的序号)
  • 元素(容器中的每个独立的数据就是元素),任何类型的数据都可以作为列表的元素

例如:

list = [1,10,'ab',True]
2.查 - 获取元素
  • 2.1 查单个 - 获取列表中某个元素

    1、语法:

    列表[下标] - 获取列表值中指定下标对应的元素

    说明:

    列表 - 任何结果是列表的表达式,例如:具体的一个列表值、保存列表的变量

    [ ] - 固定写法

    下标 - 又叫索引。他是元素在列表中的位置信息

    ​ 取值方式1:从0开始依次增加,其中0表示第一个元素,1表示第二个元素

    ​ 取值方式2:从-1开始依次递减,其中-1表示倒数第一个元素,-2表示倒数 第二个元素。。。。

    例如:

    names = ['林俊杰', '周杰伦', '王力宏', '陈奕迅' ,'薛之谦', '邓紫棋']
    print (name[6])   # 报错:list index out of range
    
  • 2.2 切片(查部分) - 同时获取列表中的多个元素

    1、原理:通过提供下标的范围来获取范围内下标对应的元素

    2、语法:

    列表[开始下标:结束下标:步长] - 从开始下标开始,每次下标值增加步长,取到结束下标前

    注意:

    1)结束下标对应的元素一定取不到,开始下标对应的元素可以取到

    2)如果步长为正,表示从前往后取,这个时候开始下标对应的位置必须在结束下标对应的位置之前,否则为空

    3)如果步长为负,表示从后往前取,这个时候开始下标对应的位置必须在结束下标对应的位置之后,否则为空

    例如:

    names = ['林俊杰', '周杰伦', '王力宏', '陈奕迅' ,'薛之谦', '邓紫棋']
    print(names[1:4:1])  # ['周杰伦', '王力宏', '陈奕迅']
    print(names[2:-1:1])   #['王力宏', '陈奕迅', '薛之谦']
    
    
    

    3、省略写法

    1)省略步长 - 相当于步长是1

    列表[开始下标:结束下标]

    2)省略开始下标

    列表[:结束下标:步长] - 步长为正,从第一个元素往后取;步长为负,从倒数第一个元 素开始往后取

    列表[:结束下标] - 从第一个元素开始往后取

    3)省略结束下标

    列表[开始下标::步长] - 步长为正,从开始下标开始往后取;步长为负,从开始下标开始往前取

    列表[开始下标:] - 从开始下标开始往后取

    4)一起省

    列表[::步长]

    列表[:]

  • 2.3 遍历

    1、方法一:直接获取元素

    for 变量 in 列表:

    ​ 循环体

    2、方法二:先混去每个元素对应的下标,然后在通过下标获取元素

    for 变量 in range(列表长度):

    ​ 列表[变量]

    len(变量) - 获取列表中元素个数

二、listOperation

1.增 - 往列表中添加元素
  • 1.1列表.append(元素) - 在列表的最后添加指定的元素

    例如:

    subjiects = ['ios', '安卓']
    subjiects.append('h5')
    print (subjects)    # ['ios', '安卓', 'h5']
    
  • 1.2列表.insert(下标,要插入的元素) - 在列表的指定下标对应的元素前面插入指定的元素

    例如:

    TVS = ['甄嬛传', '还珠格格', '情深深雨蒙蒙', '琅琊榜']
    TVS.insert(1,'庆余年')
    print(TVS)     # ['甄嬛传','庆余年' ,'还珠格格', '情深深雨蒙蒙', '琅琊榜']
    
    
    
    2.删
  • 2.1 del 列表[下标] - 删除列表中指定下标对应的元素

  • 2.2 列表.remove(元素) - 删除标中指定的元素

    如果元素不存在报错;如果被删除的元素在列表中有多个,只删除最前面的那一个

    TVS = ['西游记', '甄嬛传', '庆余年', '还珠格格','庆余年', '情深深雨蒙蒙', '琅琊榜']
    TVS.remove('庆余年')
    
  • 2.3

    1)列表.pop() - 取列表最后一个元素

    2)列表.pop(下标) - 取出列表下标对应的元素

    取出,可以另存

3.改 - 修改某个元素的值
  • 3.1列表[下标] = 新元素 - 修改列表中指定下标对应元素为新的元素

例如:

TVS = ['西游记', '甄嬛传', '庆余年', '还珠格格', '情深深雨蒙蒙', '琅琊榜']
TVS[0] = '生活大爆炸'
print(TVS)   #['生活大爆炸', '甄嬛传', '庆余年', '还珠格格', '情深深雨蒙蒙', '琅琊榜']

三、otherOperation

1.列表数学运算:+、*
  • 1.1列表1 + 列表2 - 将两个列表合并成一个新的列表

    例如:

    list1 = [10, 20, 30]
    list2 = [100, 200]
    print (list1 + list2)    #[10, 20, 30, 100, 200]
    print (list1)    # [10, 20, 30]
    
  • 1.2 列表 *N或者N *列表 - 将列表中的元素重复N此产生一个新的列表

    例如:

    print(list2 * 3)   # list2+list2+list2
    
2.比较运算:==、!=、>、<、>=、<=
  • 2.1比较是否相等 - 必须完全相等

  • 2.2 比较大小 - 比较第一对不相等的元素的大小(两个列表相同位置上的元素是一对)

    例如:

    print([100, 200] > [10, 20, 30, 40])  # True
    
    
3. in 、 not
  • 3.1 元素 in 列表 - 判断指定的列表中是否存在指定元素
  • 3.2 元素 not in 列表 - 判断指定的列表中是否不存在指定的元素
4.相关函数:max、min、sorted、sum、list、len
  • 4.1 max/min(列表) - 获取列表中最大或者最小的元素(这个列表中元素一只,并且元素本身支持比较)

  • 4.2

    1. sorted(列表) - 将列表中的元素从小到大排序,排序之后产生一个新的列表

    2)sorted(列表,reverse= True) - 将列表中的元素从大到小排序,排序之后产生一个新的列表

    例如:

    nums = [89, 923, 78, 100, 92, 8]
    new_nums = sorted(nums)
    print(new_nums)   # [8, 78, 89, 92, 100, 923]
    print(nums)       # [89, 923, 78, 100, 92, 8]
    
  • 4.3 sum(列表) - 求列表中所有元素的和

  • 4.4 list(列表) - 将序列转换成列表(获取序列中所有的元素创建一个新的列表)

    例如:

    print(list('abc'))  # ['a', 'b', 'c']
    print(range(5))   # range(0, 5)
    
    
    

1.已知一个数字列表,求列表中心元素。

nums = [10, 20, 30, 40, 50]
mid = int(len(nums)/2)
if len(nums)%2 == 0:
	print(nums[mid-1],nums[mid])
else:
    print(nums[mid])

2.已知一个数字列表,求所有元素和。

nums = [10, 20, 30, 40, 50,60]
print(sum(nums))

3.已知一个数字列表,输出所有奇数下标元素。

nums = [10, 20, 30, 40, 50,60]
for i in range(1,len(nums),2):
  print(nums[i])

4.已知一个数字列表,输出所有元素中,值为奇数的元素。

nums = [13, 21, 30, 42, 57,60]
for i in nums:
    if i % 2 != 0:
        print(i)

5.已知一个数字列表,将所有元素乘二。

例如:nums = [1, 2, 3, 4] —> nums = [2, 4, 6, 8]

nums = [13, 21, 30, 42, 57,60]
j = 0
for i in nums:
    nums[j] = i*2
    j += 1
print(nums)

6.有一个长度是10的列表,数组内有10个人名,要求去掉重复的

例如:names = [‘张三’, ‘李四’, ‘大黄’, ‘大黄’, ‘张三’, ‘张三’, ‘张三’] -> names = [‘张三’, ‘李四’, ‘大黄’]

names = ['张三', '李四', '大黄', '大黄', '张三', '张三', '张三']
names_1 = []
for i in names:
    if i not in  names_1:
        names_1.append(i)
print(names_1)

7.用一个列表来保存一个节目的所有分数,求平均分数(去掉一个最高分,去掉一个最低分,求最后得分)

scores = [95,98,81,76,93,100]
min = min(scores)
max = max(scores)
scores.remove(min)
scores.remove(max)
count = 0
for i in scores:
    count += i
print(count/len(scores))

8.有两个列表A和B,使用列表C来获取两个列表中公共的元素

例如: A = [1, ‘a’, 4, 90] B = [‘a’, 8, ‘j’, 1] --> C = [1, ‘a’]

A = [1, 'a', 4, 90]
B = ['a', 8, 'j', 1]
C = []
for i in A:
    if i in B:
        C.append(i)
print(C)

9.*有一个数字列表,获取这个列表中的最大值.(注意: 不能使用max函数)

例如: nums = [19, 89, 90, 600, 1] —> 600

max = 0
nums = [19, 89, 90, 600, 1]
for i in nums:
    if max < i:
        max = i
print(max)

10.*获取列表中出现次数最多的元素

例如:nums = [1, 2, 3,1,4,2,1,3,7,3,3] —> 打印:3

方法一:
nums = [1, 2, 3,1,4,2,1,3,7,3,3]
nums_1 = []
nums_2 = []
count = 0
for i in nums:
    if i not in nums_1:
        nums_1.append(i)
print(nums_1)
l = len(nums_1)
for j in range(l):
    for k in nums:
        if nums_1[j] == k:
            count += 1

    nums_2.append(count)
    count =0
print(nums_2)
big = max(nums_2)
for m in range(len(nums_2)):
    if big == nums_2[m] :
        print(nums_1[m])

   方法二:
nums = [1, 2, 3,1,4,2,1,3,7,3,3]
max_count = 0
index1 = 0
for i in nums:
    for j in range(len(nums)):
        count = 0
        if nums[j] == i:
            count += 1
         if count_max < count:
            count_max = count
            index = i
     print(nums[index])
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: idea 2021.1.3是一个日期,代表了2021年1月3日。在这一天,人们可能会有各种各样的想法和主意。 对于个人来说,idea 2021.1.3 可能代表了新一年的开始,人们会思考过去一年的经历和教训,制定一些新的目标和计划。这些目标可以是个人成长方面的,比如学习新的技能、提升自己的健康和幸福感;也可以是职业发展方面的,比如争取晋升、寻找新的工作机会等。在这一天,人们可能会静下心来,思考自己想要实现的梦想和目标,为新的一年做好准备。 对于企业和组织来说,idea 2021.1.3 可能代表着新的商机和创新的机会。他们可能会进行年度总结,评估过去一年的业绩和挑战,同时也考虑未来的发展方向和策略。这一天,他们可能会召开会议,讨论新的产品或服务的创意和想法,寻找新的市场机会,制定新的营销计划。idea 2021.1.3 对于企业和组织来说,可能是一个充满希望和可能性的日子,他们积极寻求创新,为新的一年做好准备。 总之,idea 2021.1.3 代表了个人和组织在新的一年里思考和计划的开始。无论是个人的梦想和目标,还是企业的商机和创新,这一天都象征着新的开始和机遇。人们可以借此机会思考过去,为未来制定计划,追求更好的生活和事业。 ### 回答2: ideaiu-2021.1.3指的是一个特定的日期,根据提供的信息,我不能确定具体是什么事件或具体意义。然而,我可以尝试通过这个日期的年份和月份来进行一些猜测。 根据“ideaiu-2021.1.3”的格式,其中的“2021”表示年份,而“1”表示月份。因此,我们可以推测这个日期是2021年1月3日。然而,在这个日期上,没有足够的信息来了解具体发生了什么事件。 如果提供了更具体的信息,我可以给予更详细的解答。比如,如果这个日期是某个重要节日,我可以介绍该节日的背景和庆祝方式。或者如果这个日期是某个特殊事件的纪念日,我也可以提供相关的背景知识和历史资料。 总之,在缺乏详细信息的情况下,我无法提供关于“ideaiu-2021.1.3”更具体的回答。如果您能提供更多相关的信息,我将非常乐意为您提供更详尽的解答。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值