Python基础知识-Part2:Python中的list与tuple

本文深入探讨Python中列表和元组的特性与操作方法,包括定义、元素增删改查、长度获取等,对比两者差异,如列表的可变性与元组的不变性,适合初学者和进阶者阅读。

list

1、定义方式类似数组,但又不是。采用“列表名 + 赋值符号 + [元素]”的方式进行定义,并且可以直接当作字符串输出。

2、“len()”可以查看该列表的元素个数。

3、“append()”用作在列表末尾追加元素,“insert()”用作在指定的位置添加元素。

4、符合自然语言,倒数第一个就是列表的最后一个。

5、“pop()”,无参数时,是删除列表最后一个元素;含参数时(不可越界),是删除列表对应位置元素,0为第一个,可以是-1(末尾元素)。

6、改变对应位置元素,直接做赋值处理就好,类似数组的单个元素赋值。

7、列表中的元素数据类型可以不同,任意。甚至是列表列表也可以。列表列表,就可以比照多维数组了。

8、列表元素一个没有的时候,长度为0

number = [1, 2, 3, 4]
print("number: %s" % (number))
print("len(number) = %s\n" % (len(number)))

number.append(5)
print("number.append(5), number: %s" % (number))
print("number.append(5), len(number) = %s\n" % (len(number)))

number.insert(0, 0)
print("number.insert(0, 0), number: %s" % (number))
print("number.insert(0, 0), len(number) = %s\n" % (len(number)))

print("number[-1] = %s\n" % (number[-1]))

number.pop()
print("number : %s" % (number))
print("number.pop(), number[-1] = %s\n" % (number[-1]))

print("number : %s" % (number))
number.pop(-1)
print("number.pop(-1), number[-1] = %s\n" % (number[-1]))


print("number : %s" % (number))
number[-1] = -1
print("number[-1] = -1, number[-1] = %s\n" % (number[-1]))


Seven = ["Seven", "ウルトラセブン", 7, 7.7]
print("Seven = %s\n" % (Seven))

Ultraman = ["Ace", "Taro", ["Leo", "Astra"]]
print("Ultraman = %s" % (Ultraman))
print("len(Ultraman) = %d" % (len(Ultraman)))
print("Ultraman[2][0] = Ultraman %s\n" % (Ultraman[2][0]))

L = []
print("len(L) = %d" % (len(L)))

 

tuple

1、元组的定义方式同列表,只是将方括号变成正常的小括号

2、空元组,长度为0。

3、定义的元组只有一个元素时,切记要在元素后加上逗号,不然就成了变量赋值了。

4、元组默认一旦初始化不可更改,但是不可更改是相对的。既然不可更改,自然没有列表那些插入、添加、删除函数了。

tuple_number = (1, 2, 3)
print("tuple_number: %s\n" % (tuple_number,))

t = ()
print("t = (), len(t) = %d\n" % (len(t)))

t1 = (2,)
print("t1 = (2,), len(t1) = %d\n" % (len(t1)))

t_enablechange = (1, 2, 3, [4, 5])
print("t_enablechange[3] = %s" % (t_enablechange[3]))
t_enablechange[3][0] = 6
print("t_enablechange[3][0] = 6, t_enablechange[3][0] = ",
      (t_enablechange[3][0]))

list 和 tuple 作为Python内置的有序集合,一个可变,一个不可变。

classDiagram class BaseComparer { <<abstract>> - _path_base: str - _path_target: str - _base_block_mapping: dict - _target_block_mapping: dict + compare_block() + compare_each_block(pre_fun) + is_color_equal(base_attr, target_attr) + are_colors_visually_identical() + get_not_equal_attrs() + cal_str_sim() + find_best_matched_indexes() + get_block_resource()$ + do_get_block_resource()$ + compare()$ + do_match_normal() + do_match_with_chapter() + filter_mapping_sheet()$ + filter_header_footer()$ + filter_chapter()$ + filter_mapping() } class TableComparer { + compare(block_name, base, target, belong_to) + get_block_resource(block, belong_to) + transpose_table(old_table, new_table) + compare_table(block_name, old_table, new_table, belong_to) + fill_visual_merged_cells(table)$ + compare_ordered_tables(block_name, old_table_obj, new_table_obj, belong_to) + find_differences(array1, array2, old_items, new_items, diff_mode) + get_cell_chars(cell_obj)$ + get_cell_content_list(cell_obj_lists, with_attr) + align_table_col(base_table, target_table) + cell_update_after(update_cells) + row_del_add_after(part, category) + process_delete_add_diff() } class TextComparer { + compare(block_name, base, target, belong_to) + get_block_resource(block, belong_to) } class PictureComparer { - _max_threshold: int = 5 - _min_block_size: int = 200 + get_block_resource(block, belong_to) + _calculate_grid_size(image) + _compute_hash_diff(base_img, target_img) + get_diff_attr(base_item, target_item) } class GraphicComparer { + get_block_resource(block, belong_to) } class DiffItem { - type: str - data_type: str - sub_type: str - block_name: str - old: object - new: object - belong_to: str - diff_point: str - diff_values: tuple } class TableObject { + rows: list[RowObject] + head_type: str + data_id: str } class RowObject { + cells: list[CellObject] + coordinate: tuple + layout: object + style: StyleObject + border: object + row_index: int + data_id: str } class CellObject { + text: str + content: list + style: StyleObject + border: object + row_index: int + col_index: int + merged_ranges: list + data_id: str + layout: object + get_chars() } class StyleObject { + background_color: str + background_style: str } BaseComparer <|-- TableComparer : 继承 BaseComparer <|-- TextComparer : 继承 BaseComparer <|-- PictureComparer : 继承 PictureComparer <|-- GraphicComparer : 继承 TableComparer --> TableObject : 使用 TableComparer --> RowObject : 使用 TableComparer --> CellObject : 使用 TableComparer --> DiffItem : 生成 TextComparer --> TextObject : 使用 TextComparer --> DiffItem : 生成 PictureComparer --> PictureObject : 使用 PictureComparer --> DiffItem : 生成 TableObject "1" --> "*" RowObject : 包含 RowObject "1" --> "*" CellObject : 包含 CellObject "1" --> "1" StyleObject : 关联 类图里面每个属性和方法后面都加上含义,像这样+ from_dict(data:dict): cls ← 从字典创建实例
最新发布
11-06
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值