python学习笔记——初识列表

Python学习——列表

……

列表和数组有点像,但并不一样。

……

一;列表的初始化

a=[] #创建一个空列表

b=[‘ab’,12,34,’w2s1’] #创建一个包含字符串和数字的列表

在c语言中,数组创建时需要事先确定数组中有多少个元素,但是列表不用。

c语言的数组中只能是同一种类型(要么是数字,要么是字符),但是列表可以数字和字符串混搭。

b[0]指的是’ab’这个字符串,b[1]指的是12这个数字,这个倒是和数组一样。

……

……

二;列表的运算

1;改变列表中元素的值

b[0]=12 #改变列表中元素的值

这时b=[12,12,34,’w2s1’]

2;列表的加法

如果有两个列表x=[1,2,3],y=[4,5,6]

直接相加z=x+y。

z=[1,2,3,4,5,6]

3;列表的乘法

比如x=[1,2,3]

x=x*3

那么x=[1,2,3,1,2,3,1,2,3]

乘法和加法的原理是类似的。

……

……

三;列表在for循环中的运用

基本的格式为:for i in 列表

比如这样一个程序:

for i in [1,2,3,4]:

        print(i)

首先i=1,循环一次后,i=2,再循环一次后,i=3,以此类推,直到i=4进行一次循环后便退出了循环。

……

……

四;range()函数

range()函数可以用来计数。

基本的格式为:range(start,top,step)

比如上面那个程序,其实就可以写成这样:

for i in range(1,5,1):

        print(i)

也就是从1开始,然后小于5为止。(不等于5)

start:计数从start开始,默认是从0开始,例如range(5)等价于range(0,5)

top:计数到top结束,但不包括top。

step:步长,默认为1。例如:range(0,5)等价于(0,5,1)

……

……

五;列表和range()函数

可以使用range()函数,来填充列表。

比如:

a=list(range(10))

print(a)

会打印出这样的结果:

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

用range()函数来填充列表,可以让列表的填充更加方便和多样。

……

……

六;sum()函数

可以使用sum()函数,来计算列表中所有数字的和。(当然,列表中不能出现字符串元素,否则就会报错)

比如:

a=list(range(101))

print(sum(a))

会输出0+1+2+……100的值:

5050

原本需要用循环才能做到的事情,只需要一个sum()函数就可以做到了。

(不得不说,python的库和函数是真的很多,比c语言丰富多了,也很难记住,一般都是用到的时候再去百度)

……

……

七;列表推导式

如果要计算6+66+666……的和,在c语言中会稍显复杂。

相对而言,python要更加简便一些。

比如这样:

n=int(input())

sum=0

for i in range(1,n+1):

        a=int('6'*i)

        sum=sum+a

print(sum)

如果输入的n=2,那么会输出:

72

实际上也就是输出6+66的值。

如果换成是列表推导式的话,可以一步到位:

n=int(input())

print(sum([int('6'*i) for i in range(1,n+1)]))

两条语句就能解决了。

只不过……

这样写出来的代码确实有点难读……感觉还是用传统的方法好一点,少用一点列表推导式吧。

你可能感兴趣的:(Python学习,python,学习,开发语言)