[Python日记-2]列表-元组-字典-if-for

Posted 山寺日高未起僧

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Python日记-2]列表-元组-字典-if-for相关的知识,希望对你有一定的参考价值。

今天学习了列表,元组,字典相关知识,真的琐碎。我应该是学了好几遍了,刚开始是充满激情的,学到一个方法就迫不及待地去尝试,现在也平和了。好了,总结下。

1. 列表

Python中用方括号([])来表示列表,并用逗号来分隔其中的元素。要访问列表元素,列表的名称[索引]。

索引可以是负值,如将索引指定为-1,可让Python返回最后一个列表元素。可以在不明确列表长度的情况下,访问最后的元素。

 

1.1 列表中添加元素的方法:

1 Lis = []
2 
3 Lis.title()    #使列表中每个元素的首字母大写
4 
5 Lis.append(apple)    #将‘apple‘元素添加到列表末尾
6 
7 Lis.insert(0,apple)    #在Lis列表的索引为0的位置,添加元素‘apple‘

 

其中,由于经常要等到程序运行后,才知道用户要在程序中储存哪些数据。为控制用户,可首先创建一个空列表,用于储存用户将要输入的值,然后将用户提供的每个新值附加到列表中(append)。

1.2 列表中删除元素的方法:

Lis = []

del Lis[0]    #删除Lis列表中某一索引的值

pop_imp = Lis.pop()    #弹出列表最后一个元素的值,并由pop_imp储存

pop_imp = Lis.pop(0)    #弹出列表第一个元素的值,并由pop_imp储存

Lis.append(apple)
Lis.remove(apple)    #删除列表中某元素的值

 

如果要从列表中删除一个元素,且不再以任何方式使用,就使用del()

如果在删除元素后还能继续使用它,就使用方法pop()

 

1.3 组织列表(排序)

  a. 方法sort()永久性的修改了列表元素的排序顺序(首字母比较)。还可以按与字母顺序相反的顺序排列列表元素,只需向sort()方法传递参数 reverse=True。

  b. 函数sorted()可以按照特定顺序显示元素(临时),而不影响它们在列表中的原始顺序。也可向函数sorted()传递参数 reverse=True。

  c. 反转列表元素 reverse()。reverse永久性的修改列表元素的排列顺序,但再次调用reverse可以恢复。

  d. len() 可以快速获取列表长度(列表中所含元素个数)。

Lis.sort(reverse=True)    #参数非必要
Lis.sorted(reverse=True)    #临时调整
Lis.reverse()
Lis.len()

 

tips:用负数索引列表时可以有效避免越界问题,除非列表为空。


 

2. 遍历循环

这里简述for循环、迭代、数字列表生成等。

for car in cars:
    print(car)    #注意缩进及冒号

for i in range(0,3)    #可以看作0为初始值,3为所要求生成的个数

even_numbers = list(range(2,11,2))    #打印1-10的偶数,range()还可以指定步长

 

这里展示如何将前10个整数的平方加入到一个列表中:

squares = []

for val in range(1,11):
    square = val**2    #乘方符号**
    squares.append(square)
print(squares)

 

同时列表解析将for循环和创建新元素的代码合并成一行,并自动附加新元素。下面实例使用列表解析创建平方数列表:

square = [value**2 for value in range(1,11)]
print(squares)

 


 

3.切片

可以用for循环遍历切片列表,做到控制循环的作用。

列表切片的默认值为头到尾

Lis[0:2]    #第1个元素到第3个

Lis[2:]    #返回从第3个元素到列表末尾的所有元素

Lis[-3:]    #返回列表最后3个元素

Lis[:3]    #返回列表前3个元素

Lis_1 = Lis[:]  #Lis列表复制到Lis_1

 


 

4. 元组

试图修改元组的操作是被禁止的,Python指出不能修改元组元素的值。但是可以修改元组变量的值。

元组使用圆弧括号()包起来的一系列元素,索引格式:元组名[索引]

dimensions = (200,50)

dimensions = (400,100)

for dim in dimensions:
    print(dim)

 


 

5. 字典

字典其实就是键-值对,形如 {"key" : "value"}。本身可以包含列表,元素,字典。也可被其所包围,有点像C语言里的结构体,一种存储方式。

favorite_languages = {
    jen: python,
    sarah: c,
    edward: ruby,
    phil: python,
}

# del favorite_language[‘jen‘]      删除某一键值对

for k,v in dic.items()    #遍历字典
       
for name in favorite_language.key():
    print(name.title)

 

显式的使用方法key()可让代码更容易理解,如果去掉,输出不变。同理,方法value()也是如此。

 


 

6. if结构

没得说,编程语言中最基础的一条流程控制语句。

Python是一个区分大小写的语言,所以即使是相同的一条字符串,大小写不同也会被视为不相等。

 

6.1 检查条件

  a. 逻辑符号:and,or

  b. 检查是否包含:in,not in

if user not in users:
    print(false)

 

6.2 if语句的基本流程

if conditinal_test:
    do something
elif conditional_test:
    do another thing
else:
    do something else

 

其中可以多层嵌套,或者嵌套其他流程控制语句,视情况而定。

 


 

小结:

今天学的都是些琐碎的东西,戒骄戒躁,明天继续前进,可能这周能结束python基础学习,做出一个项目来。

 

以上是关于[Python日记-2]列表-元组-字典-if-for的主要内容,如果未能解决你的问题,请参考以下文章

python 日记 day4。

Python列表,元组,集合,字典的区别和相互

Python列表元组字典集合存储结构

Python学习日记day3:数据类型

Python基础语法—— 列表+元组+字典

python之列表,元组,字典。