Python3快速入门——(2)list和tuple(列表和元组)

简介: 1、List基础结构#python中数据类型转换str_eight=str(8) #整型8装换位字符型'8'str_eight_two="8"int_eight=...
1、List基础结构
#python中数据类型转换
str_eight= str (8) #整型8装换位字符型'8'
str_eight_two="8"
int_eight= int (str_eight_two) #字符型转换为整型
float_eight=float(str_eight_two) #字符型转换为浮点型
#python 中的运算符**表示指数
china=10
print(china**2) #结果为100
#List
months=[] #声明months为list类型
print(type(months)) #<class 'list'>
print(months) #[] 此时list为空
months. append ("January") #向list中添加元素(字符串)
months.append("February")
months.append(2) #向list中添加元素(整型)向同一个list中可以添加不同类型的元素
print(months) #输出list 结果为:['January', 'February', 2]
2、List索引
int_months=[1,2,3,4,5,6,7,8,9,10,11,12] #声明一个list
length= len (int_months) #获取list的长度即有多少个元素
month1=int_months[0] #获取list中的第一个元素,每个list索引是默认从0开始的
month2=int_months[1] #获取list中的第二个元素
index=len(int_months)-1 #获取list最后一个元素的索引
last_value=int_months[index] #获取list最后一个元素
last_value1=int_months[-1] #索引-1代表最后一个元素的索引,-2代表倒数第二个元素的索引
#获取list中的某段元素(切片操作
months=["Jan","Feb","Mar","Apr","May","Jun","Jul"]
two_four=months [2:4] #获取索引为2,3的值,不包括索引4的值(取头不取尾),注意索引是从0开始的,输出结果为["Mar","Apr"]
three_six=months [3:] #获取索引3以后的所有元素 ['Apr', 'May', 'Jun', 'Jul']
months=[ "Jan" , "Feb" , "Mar" , "Apr" , "May" , "Jun" , "Jul" ]
b=months[: 5:2 ] #取前5个元素,每两个取一个
print (b) #结果为['Jan', 'Mar', 'May']
b=months[:: 3 ] #对所有元素,每三个取一个 ;#结果为['Jan', 'Apr', 'Jul']
#字符串也可以用切片操作,只是操作结果仍是字符串
#tuple也可以用切片操作,只是操作的结果仍是tuple

3、list和tuple(列表和元组)

list和tuple是Python内置的有序集合,一个可变,一个不可变
#list 列表
classmates=[ "Bob" , "Jim" , "Mar" , "Asia" , "Kry" ]
classmates.append( "Bill" ) #往list中追加元素到末尾
classmates.insert( 1 , "Aut" ) #把元素插入到指定的位置,比如索引号为1的位置
classmates.pop() #要删除list末尾的元素,用pop()方法
classmates.pop( 1 ) #要删除指定位置的元素,用pop(i)方法,其中i是索引位置
classmates[ 1 ]= "Git" #要把某个元素替换成别的元素,可以直接赋值给对应的索引位置

#tuple 元组
names=( "Bob" , "Jim" ,[ "Mar" , "Asia" ], "Kry" ) #声明一个元组
#names这个tuple不能变,它也没有append(),insert()这样的方法。其他获取元素的方法和list是一样的
#可以正常地使用names[0],names[-1],但不能赋值成另外的元素
#当定义一个tuple时,在定义的时候,tuple的元素就必须被确定下来,可以为空names=()
names[ 2 ][ 0 ]= "X"
names[ 2 ][ 1 ]= "Y"
print (names) # 结果为('Bob', 'Jim', ['X', 'Y'], 'Kry')
#表面上看,tuple的元素确实变了,但其实变的不是tuple的元素,而是list的元素。
# tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向'a',就不能改成指向'b',指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!

相关文章
|
9天前
|
C语言 Python
[oeasy]python054_python有哪些关键字_keyword_list_列表_reserved_words
本文介绍了Python的关键字列表及其使用规则。通过回顾`hello world`示例,解释了Python中的标识符命名规则,并探讨了关键字如`if`、`for`、`in`等不能作为变量名的原因。最后,通过`import keyword`和`print(keyword.kwlist)`展示了Python的所有关键字,并总结了关键字不能用作标识符的规则。
25 9
|
17天前
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
34 14
|
19天前
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
31 10
|
1月前
|
索引 Python
List(列表)
List(列表)。
50 4
|
1月前
|
JavaScript 数据管理 虚拟化
ArkTS List组件基础:掌握列表渲染与动态数据管理
在HarmonyOS应用开发中,ArkTS的List组件是构建动态列表视图的核心。本文深入探讨了List组件的基础,包括数据展示、性能优化和用户交互,以及如何在实际开发中应用这些知识,提升开发效率和应用性能。通过定义数据源、渲染列表项和动态数据管理,结合虚拟化列表和条件渲染等技术,帮助开发者构建高效、响应式的用户界面。
213 2
|
6月前
|
安全 Java
java线程之List集合并发安全问题及解决方案
java线程之List集合并发安全问题及解决方案
1048 1
|
5月前
|
Java API Apache
怎么在在 Java 中对List进行分区
本文介绍了如何将列表拆分为给定大小的子列表。尽管标准Java集合API未直接支持此功能,但Guava和Apache Commons Collections提供了相关API。
|
5月前
|
运维 关系型数据库 Java
PolarDB产品使用问题之使用List或Range分区表时,Java代码是否需要进行改动
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
5月前
|
存储 安全 Java
详解Java中集合的List接口实现的ArrayList方法 | Set接口实现的HashSet方法
详解Java中集合的List接口实现的ArrayList方法 | Set接口实现的HashSet方法
|
6月前
|
Java API
使用 Java 来实现两个 List 的差集操作
使用 Java 来实现两个 List 的差集操作
218 3