大乌龙!Python打印不是str而是tuple?就是多了这东西

前言

某段时间在编写python打印代码时,出现了预料之外的结果,也是很多初学者会犯的错误。

示例代码如下,看看有什么区别

# 第一种方式
name = "ztop",
print(name, type(name))

# 第二种方式
name = "ztop"
print(name, type(name))

没错,第一种方式在赋值后多了逗号,

导致它们的结果是:
在这里插入图片描述
第一种方式的打印类型会变成元组,而第二种则是正常打印字符串

延展

与逗号,类似的是分号;
它们之间有什么区别呢?

代码中逗号与分号的区别

👉逗号用于分隔语句或表达式中的元素,而分号用于分隔语句。

  • 逗号:在Python中,逗号通常用于创建元组或者在同一个表达式中分隔多个值。在我上面的例子中,逗号后面没有跟随其他表达式,所以它实际上没有起到分隔的作用,但是代码仍然有效。
  • 分号:在Python中,分号用于将多个语句分隔开,使得它们可以在同一个行中。

使用场景

  1. 逗号:当你需要将多个值赋给同一个变量时,可以使用逗号。例如,创建一个元组:
my_tuple = "ztop", 123, True
  1. 分号:当你需要在同一行中写入多个语句时,可以使用分号。例如:
x = 10; y = 20; print(x + y)

适合利用第一种方式的

在Python中,逗号的使用可以非常灵活,尤其是在创建数据结构如元组或列表时。以下是一些使用逗号的示例:

  1. 创建元组:
my_tuple = "ztop", 123, True  # 创建一个包含字符串、整数和布尔值的元组
  1. 解包元组或列表:
a, b, c = my_tuple  # 将元组中的值分别赋给变量a, b, c
  1. 在函数参数中:
def my_function(x, y, z):
    return x + y + z

result = my_function(*my_tuple)  # 使用解包传递元组中的值给函数
  1. 在列表推导中:
squares = [x**2 for x in range(10)]  # 创建一个包含0到9的平方的列表
  1. 多变量赋值:
x, y = 5, 10  # 同时给x和y赋值

在大多数情况下,逗号和分号的使用取决于你的代码风格和可读性的需求。

在上述两种方式中,逗号的使用并没有实际的语法作用,但它是合法的,并且不会影响程序的运行。

  • 10
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ztop

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值