首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在python链表中添加不同的信息并打印出来

在Python中,链表是一种常见的数据结构,用于存储一系列元素。要在链表中添加不同的信息并打印出来,可以按照以下步骤进行操作:

  1. 创建链表节点类:首先,我们需要创建一个链表节点类,用于表示链表中的每个节点。节点类通常包含两个属性:数据和指向下一个节点的指针。
代码语言:txt
复制
class Node:
    def __init__(self, data):
        self.data = data
        self.next = None
  1. 创建链表类:接下来,我们需要创建一个链表类,用于管理链表的操作。链表类通常包含两个属性:头节点和尾节点。
代码语言:txt
复制
class LinkedList:
    def __init__(self):
        self.head = None
        self.tail = None
  1. 添加节点方法:在链表类中,我们可以定义一个方法来添加节点。该方法接受一个数据作为参数,并将其添加到链表的尾部。
代码语言:txt
复制
def add_node(self, data):
    new_node = Node(data)
    if self.head is None:
        self.head = new_node
        self.tail = new_node
    else:
        self.tail.next = new_node
        self.tail = new_node
  1. 打印链表方法:最后,我们可以定义一个方法来打印链表中的所有节点数据。
代码语言:txt
复制
def print_list(self):
    current = self.head
    while current:
        print(current.data)
        current = current.next

完整的代码如下:

代码语言:txt
复制
class Node:
    def __init__(self, data):
        self.data = data
        self.next = None

class LinkedList:
    def __init__(self):
        self.head = None
        self.tail = None

    def add_node(self, data):
        new_node = Node(data)
        if self.head is None:
            self.head = new_node
            self.tail = new_node
        else:
            self.tail.next = new_node
            self.tail = new_node

    def print_list(self):
        current = self.head
        while current:
            print(current.data)
            current = current.next

使用示例:

代码语言:txt
复制
# 创建链表对象
my_list = LinkedList()

# 添加节点
my_list.add_node("信息1")
my_list.add_node("信息2")
my_list.add_node("信息3")

# 打印链表
my_list.print_list()

输出结果:

代码语言:txt
复制
信息1
信息2
信息3

以上代码实现了在Python链表中添加不同的信息并打印出来的功能。请注意,这只是一个简单的示例,实际应用中可能需要根据具体需求进行适当的修改和扩展。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

python打印不同颜色

目的:使用python时,改变在终端里输出颜色和样式。...环境:ubuntu 16.4  python 3.5.2 情景:写小脚本时,我们如果不需要输出到文件,也许只是想在终端显示信息,这时可以尝试改变输出文字颜色和样式,突出显示或者只是想秀一下。...查了一点资料: 终端字符颜色是用转义序列控制,是文本模式下系统显示功能,和具体语言无关。...转义序列是以 ESC 开头,可以用 \033 完成相同工作(ESC ASCII 码用十进制表示就是 27, = 用八进制表示 33)。...红)、36(青色)、37(白色) 3) 背景色:40(黑色)、41(红色)、42(绿色)、 43(×××)、44(蓝色)、45(洋 红)、46(青色)、47(白色) 比如: \033[0m 使用默认样式

1.9K30

链表----链表添加元素详解--使用链表虚拟头结点

在上一小节关于链表中头部添加元素与在其他位置添加元素逻辑上有所差别,这是由于我们在给链表添加元素时需要找到待添加元素位置前一个元素所在位置,但对于链表头来说,没有前置节点,因此逻辑上就特殊一些...size = 0; } (3)改进之前add(int index,E e)方法,之前对头结点添加元素单独做了处理(if-else判断),如下: 1 //链表index(0--based...//链表index(0--based)位置添加元素e (实际不常用,练习用) public void add(int index, E e) { if (index...isEmpty() { 54 return size == 0; 55 } 56 57 //链表index(0--based)位置添加元素e (实际不常用...e 80 public void addFirst(E e) { 81 add(0, e); 82 } 83 84 //链表末尾添加元素 85 public

1.8K20
  • 【Android 返回堆栈管理】打印 Android 当前运行 Activity 任务栈信息 | Activity 任务栈信息分析 | Activity 相同 Stack 不同 Task

    文章目录 一、打印 Android 当前运行 Activity 任务栈信息 二、Activity 任务栈信息分析 三、Activity 相同 Stack 不同 Task 情况 一、打印 Android...当前运行 Activity 任务栈信息 ---- 使用如下命令 , 打印 Android 手机 Activity 栈 : adb shell dumpsys activity activities..., 相同应用 , 打开 Activity , 其 Activity 都在同一个任务栈 ; 三、Activity 相同 Stack 不同 Task 情况 ---- 默认状态下 , 同一个应用启动两个...Activity 都在相同 Stack 相同 Task , 但是如下情况会出现 Activity 相同 Stack 不同 Task ; 参考 【Android 应用开发】Activity...singleTask 启动模式 , 则新启动 Activity 放在另一个 Task ; 注意 : 两个 Activity 虽然不同 Task 任务 , 但还是相同 Stack 栈

    5.7K10

    VBA多个文件Find某字符数据复制出来

    VBA多个文件Find某字符数据复制出来 今天在工作碰到问题 【问题】有几个文件,每个文件中有很多条记录,我现在要提取出含有“名师”两个字符记录。...要打开文件对话框,选中要打开文件,存入数组,再GetObject(路径)每一个文件打开,用Find指定字符,找到第一个时用firstAddress记录起来,再FindNext查找下一个,当循环到最初位置时停止...,把找到数据整行复制出来就可也。...ActiveSheet ' mysht.UsedRange.Clear title_row = 1 m = 0 i = 0 ss = VBA.InputBox("输入要查找字符...B.弹出输入字符对话框,输入你要查找字符 C.完成,打开文件数:3个,查找到了记录:36

    2.8K11

    centos6添加一块新硬盘分区

    具体要求如下: 1、添加一块新硬盘,大小1G 2、分五个区,每个大小100M,挂载到/mnt/p1-4(推荐parted) 开启虚拟机 使用parted分区方式 3、第一个个分区使用设备路径挂载 4、...1、先将虚拟机关机(是关机不是挂起),然后点击虚拟机,点设置,添加,将硬盘大小设置为1G其他就使用默认就可以了。...-t ext4 /dev/sdd3 mkfs -t ext4 /dev/sdd4 mkfs -t ext4 /dev/sdd5 6、挂载(有三种方法,设备路径,卷标,UUID) 挂载前先创建挂载目录...7、新建swap分区 使用物理分区构建swap分区 fdisk /dev/sdd5 Command (m for help): n(然后enter) Command (m for help): p(打印分区表...,可以看到新建分区) Command (m for help): t Command (m for help): 6(新建分区号不一定是6) Hex code (type L to list codes

    1.3K10

    【DB笔试面试797】Oracle,可以从exp出来dmp文件获取哪些信息

    ♣ 题目部分 Oracle,可以从exp出来dmp文件获取哪些信息? ♣ 答案部分 开发中常常碰到,需要导入dmp文件到现有数据库。...这里dmp文件可能来自于其它系统,所以,一般情况下是不知道导出程序(exp)版本、导出时间或者导出模式等信息。那么如何从现有的dmp文件获取到这些信息呢?下面作者将一一讲解。...(一)获取基本信息:导出版本、时间、导出用户 下面的示例exp_ddl_lhr_02.dmp是生成dmp文件: [ZFZHLHRDB1:oracle]:/tmp>strings exp_ddl_lhr...#C#G #C#G +00:00 BYTE UNUSED (二)获取dmp文件信息 下面的示例,exp_ddl_lhr_02.dmp是生成dmp文件: [ZFZHLHRDB1:oracle...其中,软件Pilotedit可以轻松打开上G文件。示例如下: ? 需要注意是,十六进制Linux和Windows下顺序不同

    2.5K30

    Python操控Excel:使用Python主文件添加其他工作簿数据

    标签:Python与Excel,合并工作簿 本文介绍使用Python向Excel主文件添加新数据最佳方法。该方法可以保存主数据格式和文件所有内容。...3.想要在每个工作表最后一行下面的空行开始添加数据。如图2所示,“湖北”工作表,是第5行开始添加新数据。 使用Python很容易获取所有Excel工作表,如下图3所示。...这里,要将新数据放置紧邻工作表最后一行下一行,例如上图2第5行。那么,我们Excel是如何找到最后一个数据行呢?...图4 打开读取新数据文件 打开新数据文件,从中获取所有非空行和列数据。使用.expand()方法扩展单元格区域选择。注意,从单元格A2开始扩展,因为第1列为标题行。...图6 将数据转到主文件 下面的代码将新数据工作簿数据转移到主文件工作簿: 图7 上述代码运行后,主文件如下图8所示。 图8 可以看到,添加了新数据,但格式不一致。

    7.9K20

    PostgreSQL秒级完成大表添加带有not null属性带有default值实验

    近期同事讨论如何在PostgreSQL中一张大表,添加一个带有not null属性,且具有缺省值字段,并且要求秒级完成。...因为此,有了以下实验记录: 首先我们是PostgreSQL 10下做实验: postgres=# select version();...建表,查询表信息,插入数据: postgres=# create table add_c_d_in_ms(id int, a1 text, a2 text, a3 text, a4 text, a5...,如何快速添加这么一个字段: 首先,在这里我们涉及三张系统表,pg_class(表属性)、pg_attribute(列属性)、pg_attrdef(缺省值信息),接下来依次看一下三张表信息: #pg_class...postgres=# alter table add_c_d_in_ms add a10 text; ALTER TABLE #如果添加not null属性字段,则会检测其他字段属性,将会报错 postgres

    8.2K130

    如何用Python豆瓣获取自己喜欢TOP N电影信息

    一、什么是 Python Python (蟒蛇)是一门简单易学、 优雅健壮、 功能强大、 面向对象解释型脚本语言.具有 20+ 年发展历史, 成熟稳定. 具有丰富和强大类库支持日常应用。...功能健全,能满足我们工作绝大多数需求开发 通用语言,几乎可以用在任何领域和场合,可以跨平台使用,目前各 Linux系统都默认安装 Python 运行环境 社区,是否有一个完善生态系统 pypi,...(随着网络迅速发展,互联网成为大量信息载体,如何有效地提取利用这些信息成为一个巨大挑战) 应用 搜索引擎(Google、百度、Bing等搜索引擎,辅助人们检索信息) 股票软件(爬取股票数据,帮助人们分析决策...六、实战项目 1、项目目标 目标:豆瓣获取自己喜欢TOP N电影信息 2、基础知识 HTTP 协议 客户端发起请求,服务器接收到请求后返回格式化数据,客户端接收、解析并处理数据 HTML(超文本标记语言...5、获取电影列表 6、获取电影详情 7、写入csv文件 如何学习 Python 多抄、多写、多想、多问、多看、多听、多说 学习编程是为了解决实际问题,把自己工作或学习重复工作程序化 谷歌和度娘

    1.7K61

    Python在生物信息应用:字节串上执行文本操作

    bytearray(b'World')] >>> data.replace(b'Hello', b'Hello Cruel') bytearray(b'Hello Cruel World') >>> 我们也可以字节串上执行正则表达式模式匹配操作...re.split(b'[:,]',data) # Notice: pattern as bytes [b'FOO', b'BAR', b'SPAM'] >>> 讨论 大多数情况下,几乎所有能在文本字符串上执行操作都可以字节串上进行...另外,字节串并没有提供一个美观字符串表示,因此打印结果并不美观,除非首先将其解码为字符串。....' >>> print(s.decode('ascii')) Hello World >>> 最后总结一下,通常来说,如果要同文本打交道,程序中使用普通文本字符串就好,不要使用字节串。...参考 《Python Cookbook》第三版 http://python3-cookbook.readthedocs.org/zh_CN/latest/

    8910

    【DB笔试面试647】Oracle,使用SPLIT来拆分某个分区时候,其拆分出来新分区统计信息行数是多少?

    ♣ 题目部分 Oracle,使用SPLIT来拆分某个分区时候,其拆分出来新分区统计信息行数是多少? ♣ 答案部分 分区分裂时,新分区统计信息会继承原分区统计信息值。...若原分区统计信息为空,则新分裂出来分区统计信息也为空。所以,建议对SPLIT出来新分区重新收集统计信息。...收集分区表某个分区SQL如下所示: DBMS_STATS.GATHER_TABLE_STATS(USER,'TB_NAME',PARTNAME=>'PT_PART_NAME',GRANULARITY=...>'PARTITION',CASCADE=>TRUE);--针对分区表单个分区进行收集统计信息 本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗

    1.2K20

    数据结构 | 如何一文搞定链表问题?(附20本书获奖名单)

    链表结点包括数据域和指针域两部分,顾名思义,数据域保存着元素数据信息,指针域保存着下一个结点指针标识。当然 Python 没有指针这个概念,刷题中也是模拟指针概念进行操作。 ?...链表分类则可以根据不同方式: 从内存角度出发: 链表可分为 静态链表、动态链表。 从链表存储方式角度出发: 链表可分为 单链表、双链表、以及循环链表。 ?...链表常见操作 链表常见操作包括但不局限于求链表长度、结点删除、插入等,但小詹之前文章说过许多次,Python 由于不存在指针,所以指针和链表都是模拟指针和链表。...如下 InitList() 方法用一个非空 data 构建链表定义了一个 PrintList() 方法打印链表结果。...p = p.next 这是一个简单构建链表方法并将其打印出来,可以测试下结果。

    37310

    Python在生物信息应用:字典中将键映射到多个值上

    如果你想保持元素插入顺序可以使用列表, 如果想去掉重复元素就使用集合(并且不关心元素顺序问题)。 你可以很方便地使用 collections 模块 defaultdict 来构造这样字典。...defaultdict 一个特征是它会自动初始化每个 key 刚开始对应值,只需要关注添加元素即可。..., defaultdict 会自动为将要访问键(即使目前字典并不存在这样键)创建映射实体。...如果你并不需要这样特性,你可以一个普通字典上使用 setdefault() 方法来代替。...因为每次调用都得创建一个新初始值实例(例子程序空列表 [] )。 讨论 一般来说,构建一个多值映射字典是很容易。但是如果试着自己对第一个值做初始化操作,就会变得很杂乱。

    14010

    妙哉!cJSON设计思想解读及封装JSON数据方法示例

    ,方便起见, cJSON ,数组也表示为一个数组对象,用链表存储,所以: 键值对结构体,当该键值对值是一个嵌套 JSON 数据或者一个数组时,由child指针指向该条新链表。...JSON 数据封装 封装方法 封装 JSON 数据过程,其实就是创建链表和向链表添加节点过程。...JSON 数据就是一条长长链表,那么,如何打印出这段 JSON 数据呢?...cJSON 提供了一个 API,可以将整条链表存放 JSON 信息输出到一个字符串: (char *) cJSON_Print(const cJSON *item); 使用时候,只需要接收该函数返回指针地址即可...添加一个链表节点) */ cJSON_AddFalseToObject(cjson_test, "student"); /* 打印JSON对象(整条链表)所有数据 */ str

    2.8K20

    Python 算法基础篇:链表和双向链表实现与应用

    Python 算法基础篇:链表和双向链表实现与应用 引言 链表和双向链表是常用线性数据结构,它们算法和程序设计中有着广泛应用。...本篇博客将重点介绍链表和双向链表原理、实现以及它们不同场景下应用。我们将使用 Python 来演示链表和双向链表实现,通过实例展示每一行代码运行过程。 ❤️ ❤️ ❤️ 1....类方法包括:判断链表是否为空 is_empty ,链表头部添加节点 add_at_head ,链表尾部添加节点 add_at_tail ,指定节点后插入节点 add_after_node ,删除链表头部节点...类方法包括:判断链表是否为空 is_empty ,链表头部添加节点 add_at_head ,链表尾部添加节点 add_at_tail ,指定节点后插入节点 add_after_node ,删除链表头部节点...我们通过使用 Python 来演示链表和双向链表实现,通过实例展示它们不同场景下应用。

    59320
    领券