强制类型转换

  • 直接看总结
# 定义各个数据类型的值
num_int = 123
num_float = 123.1
num_str = '123'
num_list = [1, 2, 3]
num_tuple = (1, 2, 3)
num_dict = {1:'one', 2:'two', 3:'three'}
num_set = {1, 2, 3}

int()

  • int()只能对int, float, str(纯数字)使用,其余报错
result_int = int(num_int)
result_float = int(num_float)
result_str = int(num_str)
print(result_int)
print(result_float)
print(result_str)

123

123

123

str()

  • str()可以对任意数据类型使用,但他只能保存一个值,所以他的作用就是在外部加了个引号,对里面的元素没有任何改变.
# 格式化字符串是为了输出看到"",不然是没有变化的
result_int = str(f'"{num_int}"')
result_float = str(f'"{num_float}"')
result_str = str(f'"{num_str}"')
result_list = str(f'"{num_list}"')
result_tuple = str(f'"{num_tuple}"')
result_dict = str(f'"{num_dict}"')
result_set = str(f'"{num_set}"') print(result_int)
print(result_float)
print(result_str)
print(result_list)
print(result_tuple)
print(result_dict)
print(result_set)

"123"

"123.1"

"123"

"[1, 2, 3]"

"(1, 2, 3)"

"{1: 'one', 2: 'two', 3: 'three'}"

"{1, 2, 3}"

list()

  • list()里的对象,不可以是整形和浮点型,如果是字典,默认取键,可以用.values() & .items()命令修改
  • str里的元素会一个一个取出来,但都是str的数据类型
  • 改变后的列表,元祖,字典,集合的值相等
result_str = list(num_str)
result_list = list(num_list)
result_tuple = list(num_tuple)
result_dict = list(num_dict)
result_dict_values = list(num_dict.values())
result_dict_items = list(num_dict.items())
result_set = list(num_set) print(result_str)
print(result_list)
print(result_tuple)
print(result_dict)
print(result_dict_values)
print(result_dict_items)
print(result_set) print(result_list == result_tuple == result_dict == result_set)

['1', '2', '3']

[1, 2, 3]

[1, 2, 3]

[1, 2, 3]

['one', 'two', 'three']

[(1, 'one'), (2, 'two'), (3, 'three')]

[1, 2, 3]

True

tuple()

  • 和list()一样,只是[]变成了()

set()

  • 和list()一样,只是[]变成了{}

dict()

  • 脑子痛以后再弄

总结

数字类型由于不可迭代,只能对数字类型或者str中是数字类型的对象转换

字符串类型转换任意值

列表,元祖,集合,可以转换除数字类型外的值

day10 强制类型转换(更新)的更多相关文章

  1. 带你玩转JavaScript中的隐式强制类型转换

    正题开始前我想先抛出一个问题,==和===有什么区别?可能一般人会想,不就是后者除了比较值相等之外还会比较类型是否相等嘛,有什么好问的,谁不知道?!但是这样说还不够准确,两者的真正区别其实是==在比较 ...

  2. java中强制类型转换

    在Java中强制类型转换分为基本数据类型和引用数据类型两种,这里我们讨论的后者,也就是引用数据类型的强制类型转换. 在Java中由于继承和向上转型,子类可以非常自然地转换成父类,但是父类转换成子类则需 ...

  3. C++强制类型转换

    C语言强制类型转换过于粗暴,任意类型之间都可以进行转换,编译很难判断其正确性; 难于定位,在源码中无法快速定位所有使用强制类型转换的语句. C++将强制类型转换分为4种不同的类型:static_cas ...

  4. java提高篇(十一)-----强制类型转换

    在java中强制类型转换分为基本数据类型和引用数据类型两种,这里我们讨论的后者,也就是引用数据类型的强制类型转换. 在Java中由于继承和向上转型,子类可以非常自然地转换成父类,但是父类转换成子类则需 ...

  5. JavaScript学习10 JS数据类型、强制类型转换和对象属性

    JavaScript学习10 JS数据类型.强制类型转换和对象属性 JavaScript数据类型 JavaScript中有五种原始数据类型:Undefined.Null.Boolean.Number以 ...

  6. C++强制类型转换操作符 dynamic_cast

    dynamic_cast是四个强制类型转换操作符中最特殊的一个,它支持运行时识别指针或引用. >>>>>>>>>>>编译器的RTTI设 ...

  7. C++强制类型转换操作符 const_cast

    const_cast也是一个强制类型转换操作符.<C++ Primer>中是这样描述它的: 1.将转换掉表达式的const性质. 2.只有使用const_cast才能将const性质性质转 ...

  8. C++强制类型转换操作符 static_cast

    static_cast是一个强制类型转换操作符.强制类型转换,也称为显式转换,C++中强制类型转换操作符有static_cast.dynamic_cast.const_cast.reinterpert ...

  9. Js里面的强制类型转换

    js 和 PHP语言一样是弱类型语言.近期我也在看C语言,并没有传说中那么难,既是书中一再强调的指针部分,也没有那么夸张.至少是理论和语法理解起来不是很难.看起来凡是什么东西,不要总是被别人的话迷惑了 ...

随机推荐

  1. Centos 7 安装图形化界面

    Centos 7 默认是没有图形化界面的,但我们很多人在习惯了 Windows 的图形化界面之后,总是希望有一个图形化界面从而方便我们使用,这里介绍一下 CentOS7安装图形化桌面系统的方法. 一. ...

  2. hibernate一对多和多对一配置

    public class Dept { private int deptId; private String deptName; // [一对多] 部门对应的多个员工 private Set<E ...

  3. tomcat 配置 https 几点注意

    1.修改server.xml时候把注释的改改就好,不要添加,免得杂乱. 2.安装openssl openssl-devel autoconf libtool apr tomcat-native 才行. ...

  4. 小结ajax中的同源和跨域 jsonp和cors

    网上的同源和跨域一般都比较复杂,最近也稍微总结了一下: 所谓同源,是浏览器的一种安全机制,作用在于保护网页数据的安全,不同源的网页之间不允许cookie dom ajax等行为 同源的条件:1.协议相 ...

  5. Project Euler 44 Sub-string divisibility( 二分 )

    题意:五边形数由公式Pn=n(3n−1)/2生成,在所有和差均为五边形数的五边形数对Pj和Pk中,找出使D = |Pk − Pj|最小的一对:此时D的值是多少? 思路:二分找和差 /********* ...

  6. 用C#调用Windows API向指定窗口发送按键消息

    一.调用Windows API. C#下调用Windows API方法如下: 1.引入命名空间:using System.Runtime.InteropServices; 2.引用需要使用的方法,格式 ...

  7. C# 实现自定义的USB设备与上位机进行通信(上位机部分)

    因为以前没用过USB,对USB也不了解,于是上网查了很多资料,不过网上的资料都是零零散散,不清不楚的,于是我自己总结了一下,下面几个链接是网上这么多零散资料里,我觉得比较有参考意义的. USB设备连接 ...

  8. 【CodeForces 574B】Bear and Three Musketeers

    [链接] 我是链接,点我呀:) [题意] [题解] 枚举每一条边(x,y) 然后再枚举y的出度z 看看g[x][z]是否等于1(表示联通) 如果等于1就说明找到了一个三元环,则尝试用它们的出度和-6更 ...

  9. [Linux]第三部分-学习Shell和Shell脚本

    vim 高级的 vii o a 进入编辑模式 esc进入一般模式:wq离开alias vi='vim' 使用vim打开viv块选择 y复制反白,d删除反白在vi中打开一个文件后,可以使用 sp fil ...

  10. POJ 2111

    记忆化搜索即可,设DP[I][J]为可到达的最大步数. 输出时用了一种较笨拙的方法,还有一种方法是使用最长上升子序列的方式,挺好,先排序,这让我想起上次BESTCODER的一题 #include &l ...