Day 9 : 存放资料的收纳库-串列资料(上)

若有一点程序语言的基础就会知道,在C语言中,有着用来存放资料的方法,叫做阵列(array),没学过的也没关系,你可以把它想像成是一个存放资料的集合。如果你要记录一个礼拜的薪水,那要怎麽做呢?可以一个一个变数慢慢定,可是若会阵列的概念,就可以更有效率的找到存放的资料。

在Python中,使用的并不是阵列,是与阵列十分相似的"串列",串列又有分为几种形式,我们先说最基本的-list。

list

list是在python中,非常常用的功能,他可以把许多相同性质的资料存放在一起,方便查询。

money = ['100$','200$']

上面这个例子我建立了一个变数名为money的阵列。阵列由中括号包覆住,里面可以存放元素,每个元素利用逗号隔开,从左至右,从第0号开始排序。
可以把它印出来看看:

money = ['100$','200$']
print(money) #输出为 ['100$', '200$']

我们可以用下面这个方式来取出阵列的值:

money = ['100$','200$']
print(money[0]) #取出money阵列的第0(1)个值,输出为 100$
print(money[1]) #取出money阵列的第1(2)个值,输出为 200$

若今天想知道阵列中有几笔资料的话,我们可以用len()来查询:

money = ['100$','200$']
print(len(money)) #阵列长度为2 输出为 2

那如果这笔资料很长,你又不知道有几个元素,那要如何取得最後一个值呢?
你当然可以先用len()查询有多少笔资料,得到阵列长度後,再print出最後一个数值,可是有另外一个方法比较方便:

money = ['1500$','1400$','2100$','3100$','5400$','2500$','4200$']
print(money[-1]) #取出money阵列的倒数第一个值,输出为 4200$
print(money[-2]) #取出money阵列的倒数第二个值,输出为 2500$

若用负号,就代表从後面开始数,就可以获得後面的值。

若要取得一个范围的所有值,可以用冒号隔开,如下:

money = ['1500$','1400$','2100$','3100$','5400$','2500$','4200$']
print(money[1:3]) #取出1到2的所有值,输出为 ['2100$', '3100$']

若起始值为0的话,也可以省略0只打print(money[:3])就好。

这个阵列只有一个礼拜的薪水,今天我想再增加第二个礼拜的值,该怎麽做呢?这时候就要利用insert。

money = ['1500$','1400$','2100$','3100$','5400$','2500$','4200$']
money.insert(1, '6000$') #在阵列的第1(2)个位置插入 6000$ 这个字串元素
print(money) #,输出为 ['1500$', '6000$', '1400$', '2100$', '3100$', '5400$', '2500$', '4200$']

可以增加当然也可以删除,想要删除可以使用remove。

money = ['1500$','1400$','2100$']
money.remove('1500$') #移除money这个串列中的1500$这个元素
print(money)

还有一种做法可以用来移除指定位置的值,叫做pop。

money = ['1500$','1400$','2100$']
money.pop(1) #移除第1(2)个位置的值(1400$)
print(money)

insert中要输入插入元素的位置以及元素内容,但若要一次插入大量的值的话,我比较建议用合并串列的概念去做。

money = ['1500$','1400$','2100$','3100$','5400$','2500$','4200$']
money2 = ['2000$','4500$','1000$']
money = money + money2
print(money)

利用这种简单的加法就可以将两个串列合并了喔!

还有两种一定要知道的串列功能,分别是:

  • sort():排序串列
  • reverse():反转串列
money = ['1500$','1400$','2100$']
money.sort() #利用ASCII码的字元大小将三个字串元素排列
print(money) #输出为 [''1400$','1500$','2100$']

money2 = ['1500$','1400$','2100$']
money2.reverse() #反转串列顺序
print(money2) #输出为 ['2100$','1400$','1500$']

最基本的list就先讲到这里,明天会开始介绍剩下的串列类型。


<<:  盘点资通资产 - 资讯及资通系统资产清册

>>:  C# 入门之运算符(补充)

[Day 17] 实作 - 介面篇

开始做一个可以提供设热键的地方 这样才可以增加技能的施放喔~(Q W E R T) 首先再整理一下之...

【DB】B tree B+ tree

从今天开始不讲 Leetcode 了除非有想到什麽还没点到。 後面要提一下对於其他知识点的准备, 毕...

2.4.10 Design System - Input Text

以前我绝对是对哲学避之唯恐不及的 但某一年意外看到「正义 一场思辨之旅」以及「超译 尼采」後 开始...

#24-这个播放器也太潮!用Canvas放音乐!w/JS web audio API

今天来试试看利用Canvas来做声音的视觉表现! 搭配Javascript web audio AP...

Day 17:「我们,是好朋友哦~」- Vue 简介

嗨各位,Tailwind 篇结束了, 不知道会不会有人敲碗更多呢? 还想知道更多的话也没有问题~ ...