奔跑的学弱狗
2019-08-29 09:50
采纳率: 100%
浏览 1.1k

关于python中 int,str,tuple类型的wen'ti

使用数据类型定义元组时:
图片说明
图片说明

如果里面是单个数字,不管后面加不加逗号,都会报错,提示int 不可迭代,但为什么单个字符串就可以。

请问可以讲一下类型转换时,tuple转化其他类型的过程是什么?最好从原理上讲一下为什么上述问题会出错?谢谢!

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • weixin_42062762 2019-08-29 10:33
    已采纳

    元组是可以和字符串,列表进行转化,
    int可以和string,float,等进行转化,
    但是你不能直接将int转化为tuple,你可以先将其转换为string,在进行转换

    打赏 评论
  • 赶在日落之前 2019-08-29 11:05

    大哥,你写错了tuple()这是个函数,括号里面的是参数tup1 = (1,)tup2 = tuple(tup1)print(tup2),因为他在定义这个函数时就要求元组中只包含一个元素时,需要在元素后面添加逗号,和你写封装函数一样自己加的限制条件,所以你的正确写法应该是是s1 = tuple((1,))

    打赏 评论
  • 奔跑的学弱狗 2019-08-29 15:17

    图片说明

    tuple对象下 初始化里写的是
    1,如果不传参,会定义一个空元组
    2,如果传参了,会从迭代对象里的第一个开始迭代,因为传数字,1是 int 型 不可迭代,所以会出错,但传进一个字符串是可迭代的,所以不会出错 。
    3,如果传的是一个元组,默认返回的还是元组

    打赏 评论

相关推荐 更多相似问题