首页
学习
活动
专区
圈层
工具
发布

菜鸟学Python——基本数据类型

我会非常自信的把之前整理的Python教程扔给他,后来收到很多反馈:你的排版太烂了,你遗漏了好多知识点,能不能加一点练习题?...int 简单粗暴的理解整数就是:整数就是没有小数点。比如1,-1,777。int类型在Python中是动态长度的,因为python3中int类型是长整型,理论支持无限大的数字。...在python中这样表示: 7+3j 复数是由一个实数和一个虚数组合构成,表示为:x+yj 一个负数时一对有序浮点数 (x,y),其中 x 是实数部分,y 是虚数部分。...以下的数据类型只做简单的介绍,因为后面的文章会详细介绍。 String(字符串) Python中的字符串用单引号 ' 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符。...键(key)必须使用不可变类型。在同一个字典中,键(key)必须是唯一的。 人生苦短,Python当歌 未完待续,连载中......

99530

零基础学习 Python 之字典

同时写这个教程也算是对自己之前所学知识的一个巩固和提高,喜欢的朋友们可以点个关注,有问题欢迎随时和我交流。本文所有的代码编写均是Python3 版本。...创建字典 字典里的元素是一对一对的,有个特别好听的名字叫:键 / 值对,形式是 "key" : "value" ,前面的是键,后面是前面的键所对应的值,键 / 值之间用英文的冒号隔开,每一对键 / 值之间用英文的逗号隔开...', 'name': 'rocky', 'like': 'python'} 在前面的文章里我们讲过字符串,列表和元组,其中列表是可变的,字符串和元组是不可变的,那么字典呢?...字典这种键 / 值对的方式存储数据是一种非常高效的方法,查找速度超快,相同的,如果你要在列表中查找一个值,需要从头开始一个个的找,直到找到了指定的索引值,但是在字典中,直接就可以通过 “键” 找到 “值...最后感谢你能看到这里,希望我写的东西能够让你有到收获,但是我还是希望我在文章里插入的代码,你们能自己动手试一下,都很简单。

57010
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Python2和Python3的区别,以及为什么选Python3的原因

    罗振宇在今年的跨年演讲,《时间的朋友》中有个观点,大意是说,人们都有一种受虐情节,有时候希望别人对他粗暴一点。...为此,他还举了两个例子,分别是“乔布斯对待消费者的态度”和“和菜头不尊重他的饮食需求”,末了还很享受的来一句:我爱死他了,对我再粗暴一点好不好!...其次,Python 2和Python 3确实有一些差异,但是,并没有大家想象的那么大,Python 2和Python 3之间的差异不到Python语法的10%,我们可以快速地了解哪些Python 2里面的语法在...stop talking, just do it 前面说了我对学习Python 2还是Python 3的一些观点,希望能够帮助大家少走弯路,另外,关于Python的版本问题,我这里还有一些良心建议: 学习...Python 3.4以前的版本 多了解Python 2的__future__库 对同一份代码,不要为Python 2和Python 3分别维护分支,努力在一套代码中兼容Python 2和Python 3

    1.4K10

    copy.deepcopy()_python切片是深拷贝还是浅拷贝

    大家好,又见面了,我是你们的朋友全栈君。 copy()与deepcopy()之间的主要区别是python对数据的存储方式。...—–而浅复制要分两种情况进行讨论: 1)当浅复制的值是不可变对象(数值,字符串,元组)时和“等于赋值”的情况一样,对象的id值与浅复制原来的值相同。...对于简单的 object,例如不可变对象(数值,字符串,元组),用 shallow copy 和 deep copy 没区别 复杂的 object, 如 list 中套着 list 的情况,shallow..., 4]] >>> cop2 [1, 2, [3, 4]] #把origin内的子list [3, 4] 改掉了一个元素,观察 cop1 和 cop2 学过docker的人应该对镜像这个概念不陌生,我们可以把镜像的概念套用在...版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

    62320

    这五个Python核心知识点太重要了!

    什么是变量变量就好比我们生活中给东西起的名字,方便我们找到和使用它。在 Python 里,变量是用来存储数据的,你可以把各种数据放进这个 “名字” 里。...什么是类型注解类型注解就是明确告诉别人这个变量是什么类型的。就像给变量贴了个标签,说 “我这个变量是字符串类型”“我这个变量是整数类型”。2....def greet(name="陌生人"): """打招呼,默认对陌生人打招呼""" print("你好,", name)greet("小明")greet() # 不传递参数,使用默认值运行结果...什么是特殊方法特殊方法也叫魔法方法,是 Python 中自带的、以双下划线__开头和结尾的方法。它们能让自定义的类支持更多内置操作,让类的使用更方便。2....常量定义在 Python 中没有真正的常量,但我们可以通过命名规范和类型注解来表示常量,约定常量名全部用大写字母,并且定义后不修改它的值。

    30510

    53个Python经典面试题详解

    为了帮助大家通过面试,下面我整理了我为Python面试/工作准备的问题,并提供了答案。大多数数据科学家都会编写大量的代码,所以这些问题/答案对科学家和工程师都同样适用。...列表(list)和元组(tuple)有什么区别? 在我每一次应聘Python数据科学家的面试中,这个问题都会被问到。所以对这个问题的答案,我可以说是了如指掌。 列表是可变的。创建后可以对其进行修改。...在不导入Template类的情况下,有3种方法进行字符串插值。...什么是pickling? Pickling是Python中序列化和反序列化对象的常用方法。 在下面的示例中,我们对一个字典列表进行序列化和反序列化。...pass意味着什么都不做。我们之所以通常使用它,是因为Python不允许在没有代码的情况下创建类、函数或if语句。

    8.8K30

    53 道 Python 面试题,帮你成为大数据工程师

    本着这种精神,这是我的python面试/工作准备问题和答案。大多数数据科学家编写了大量代码,因此这对科学家和工程师均适用。...在我进行过的每次python /数据科学访谈中,都曾问过我这个问题。像手背一样知道答案。 · 列表是可变的。创建后可以对其进行修改。 · 元组是不可变的。...即:内存中的数据库记录,(2," Ema"," 2020–04–16")#id,名称,created_at 2.如何进行字符串插值? 在不导入Template类的情况下,有3种插值字符串的方法。...酸洗是在Python中序列化和反序列化对象的首选方法。 在下面的示例中,我们对字典列表进行序列化和反序列化。...通过意味着什么都不做。我们之所以通常使用它,是因为Python不允许在其中没有代码的情况下创建类,函数或if语句。 在下面的示例中,如果i> 3中没有代码,则会引发错误,因此我们使用pass。

    12.3K41

    我们来看看三种Python反转字符串方法的性能差距

    阅读本文需要5.2分钟 反转Python字符串的三种主要方法:“切片”,反转迭代和经典的就地反转算法。 在Python中反转字符串的最佳方法是什么?...中反转字符串的三种主要方法以及比较三者之间的性能差距。...因为Python字符串是序列,所以这是获取字符串的反向副本的快速简便的方法: >>> 'TURBO' [:: - 1 ] 'OBRUT' 可以将此切片表达式写到一个函数中,让代码的作用更加明显: defreverse_string1...因为Python字符串是不可变的,所以首先需要将输入字符串转换为可变的字符列表,就可以执行就地字符交换: defreverse_string3(s): """Return a reversed...---- 总结: 如果您想知道在Python中反转字符串的最佳方法是什么,我的答案是:“取决于情况”。就我个人而言,我喜欢这种reversed()方法,因为它是“自我记录”且相当快。

    2.2K20

    程序员的代码行数越少越好?

    在极少数情况下,代码行数可能还有那么一丁点意义,在绝大数情况下,代码行数什么都代表不了。根据代码行数做决策就好像按照页数评价书籍的水准。 有些人可能会认为,应用程序中的代码行越少,就越容易阅读。...总是有人会说: “C比X更好,因为C的性能更好。”“Python比X更好,因为Python更简洁。”“Haskell比X更好,因为Haskell是外星语言。”...这样会减少对代码的陌生感。即使我在Github上浏览随机项目,我也会这样做。一起来试试看吧:https://github.com/javastacks/javastack。...审核代码时,如果代码的作者做出的选择我并不熟悉,那么我会立即通过Google查看他们的选择是否与流行观点不符。我并不是说流行观点永远是对的,只不过流行观点是默认的选择。...如果有人决定不采纳流行的观点,那也很好啊,只不过我需要知道这是否合理。在审查代码时,有一点至关重要:你必须了解决策背后的基本原理。

    82920

    一文解决现代编程语言选择困难:命令式编程

    目标是确保所有对引用的使用是绝对安全的,并由编译器自动执行检查。我无法克制添加空值引用的诱惑,完全因为空值引用非常易于实现。...当前的编程工作中,使用不可变值越来越常见。即便是 React 这样的现代 UI 软件库,也考虑使用不可变值。对支持不可变数值提供一等支持的编程语言,我们会给出更高的评判。...这完全是因为不可变性避免了编程中出现许多软件缺陷。 什么是不可变状态?简而言之,就是数据不会发生改变。例如,大多数编程语言中的字符串。...不可变性 未内置对不可变数据结构的支持。 评判 很不幸,Python 并不提供对函数式编程的支持。函数式编程非常适合处理数据科学所面对的问题。...大型数组和对象的拷贝的性能也非常不好。 但 TypeScript 中,readonly 关键字非常好用,用于定义属性是不可变的。

    1.9K30

    你真的知道Python的字符串怎么用吗?

    不敢说字符串就只有这七种拼接方式,但应该说它们是最常见的了。有小伙伴说,我写漏了一种,即字符串乘法,可以重复拼接自身。没错,从结果上看,这是第八种拼接方式,视为补充吧。...前面已说过,字符串是不可变序列,所以字符串拆分过程是在拷贝的字符串上进行,并不会改变原有字符串。...有几个很好理解,即append()、insert()、pop() 和 remove(),它们都是对单个元素的操作,但是,字符串中的单个元素就是单个字符,通常没有任何意义,我们也不会频繁对其做增删操作,所以...Python 中曾经有 cmp() 方法和__cmp__()魔术方法,但官方嫌弃它们鸡肋,所以在Python 3 中移除掉了。...在Java 的不同数据类型之间,那道分隔之墙矗立得很高,仿佛需要借助一座更高的吊桥才能沟通两边,而在灵活的 Python 里,你可以很方便地打开墙上的那扇门,来往穿越。

    1.4K30

    自学Python一 迷茫中的开端!

    有心学习一下Python,多门技术多条路啊。经历了找教程,看代码,写demo,这东西入门容易精通难啊!又因为请了两周婚假彻底忘光光。想了想自己还是边复习边写点什么东西吧。...或者Sublime Text,或者Pycharm,或者用Eclipse+Pydev 或者 VS2013 + python tools (请允许我保留我大vs一席之地!)   ...那么接下来,我将尝试根据自己遇到的困难,克服自己的懒惰与眼高手低,逐一的去记录python的优雅!   Action! Python中的屠龙刀(用好了妙用无穷哦!)   一、 切片   list!...谈这两个的原因是因为他设计到了python的高级特性:切片!   ...二、迭代   这个就不用多说了,在c#中经常用到,在访问数组,List,字典等等的时候经常foreach了!在Python中也一样,只要是Iterable类型就可以进行迭代!

    61120

    《廖雪峰python3教程》| 书评 + 学习笔记干货

    学习笔记分享 在边学习 《廖雪峰python3教程》,边在jupyter notebook上跑代码实例、整理笔记。...break和continue有什么区别? dict set 不可变对象。str,list谁是可变,谁是不可变的呢? pass语句 参数检查。...contextlib urllib模块:操作url Pillow模块:图像处理 requests模块:用于访问网络资源 chardet:在不知道编码的情况下,检测编码以百分之多少的概率可能是什么语言...因为这个是我个人的盲点整理,所以记录的都是我不会的,所以你发现很多不会也非常正常~ 不过清单中的大部分,如果你静下心来去学习和阅读,你是可以理解和收获的,因为每一个知识点我也是自己看了一遍的~ 知识点主要从...我会继续分享更多的笔记。 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

    2.1K20

    LeetCode周赛291,最后5分钟连A两题,不放弃才皆有可能

    我在放弃和再挣扎之间反复摇摆,一直到最后的几分钟,偶然的灵光一闪,我找到了bug,连A了两道题,逆袭了比赛,拿到了名额。...我比赛的时候就是卡在了这里,因为数组去重是一个非常麻烦的操作,针对这个问题并没有什么太好的解法。所以我思前想后也不知道该怎么对这些数组进行去重。...因为我把set的概念搞混了,在Python当中,set、map这类对象的key是不能是list、dict这类可变对象的。但C++当中并没有这样的限制,set的key也可以是vector。...思维陷入了误区,自然就无论如何绞尽脑汁也无法解决了,最后也是在比赛结束之前,决定尝试一下利用Python的set对tuple进行去重,本来是打算碰碰运气,没想到真的过了。...子字符串 定义为:字符串中的一个连续字符序列。 解答 这题乍看起来很难,因为给定的字符串长度很大,有1e5,我刚拿到手也没有想到好的解法。

    46820

    Python编程常见问题与解答

    并且,最好切换到Python安装目录中的scripts子目录中执行,在安装了多个Python版本时这一点非常重要。...答:这样的情况一般是因为安装了多个Python版本。在一个版本下安装的扩展库不能在另一个版本中使用,需要分别进行安装。 9.问:map对象不支持下标吗?...答:在Python中,不可哈希(unhashable)和可变的意思是一样的。整数、实数、复数、字符串、元组这些是不可变的,或者说是可哈希的。而列表、字典、集合是可变的,或者说是不可哈希的。...答:Python代码对缩进的要求非常严格,相同层次的代码必须具有同样的缩进量。...答:在Python中,元组和字符串这样的容器类对象是不可变的,不支持其中元素的增加、修改和删除操作。

    4.6K10

    流畅的 Python 第二版(GPT 重译)(一)

    接下来,我们介绍熟悉的属性机制,然后深入探讨 Python 中对象属性访问如何在较低级别使用描述符工作。解释了函数、方法和描述符之间的关系。...皂盒:我的个人观点 从 1998 年开始,我一直在使用、教授和探讨 Python,我喜欢研究和比较编程语言、它们的设计以及背后的理论。...语法提示 在 Python 代码中,在[]、{}或()对之间的换行符会被忽略。因此,你可以构建多行列表、列表推导式、元组、字典等,而无需使用\换行转义符,如果不小心在其后键入空格,它将不起作用。...⑦ 这会原地对列表进行排序,并返回None(控制台省略了这一点)。 ⑧ 现在fruits已经排序。 警告 默认情况下,Python 按字符代码按字典顺序对字符串进行排序。...因为在实际代码库中,在循环中使用+=进行字符串构建是如此普遍,CPython 对这种用例进行了优化。str的实例在内存中分配了额外的空间,因此连接不需要每次都复制整个字符串。

    1.4K00

    Python 的 2018 年终总结:发展状况回顾

    我发现它是对所有代码库的一个极其有用的补充,可以在我编写一行测试代码之前发现绝大多数错误。然而,这并非没有缺陷。...开发管理生态系统由三个工具和标准(virtualenv、pip和requtrements .txt)组成,它们之间没有清晰的交互关系。既然你试图完成一项任务,为什么没有一种工具可以提供帮助呢?...这是因为logging.debug是一个函数,字符串作为参数传递。你可以在易读的C源代码中看到它是如何工作的。...这在语言层面上是有意义的,但是在我的工作流程中实际的结果却是令人恼火的。调试代码时,我首先编写print语句,当一切正常时,我随后将它们转换为logging语句。...tox Tox仍然是python大陆中最好的(或者更准确地说,实际上是最好的)测试运行程序,但是它非常糟糕。不仅tox.ini的语法文件有点不直观,工具也非常慢。

    74030

    python缩进错误提示(python缩进讲解)

    绝对不能混用tab和空格… 代码缩进错误(indentationerror):python的缩进非常严格,行首多个空格,少个空格都会报错。? 4.输入法半角全角:特别是传入中文字符串时,引号、逗号。...即:在python2中类型会自动转化,而在python3中则要么报错,要么不转化str与… 我最近刚捡到python,它一直用一个反复出现的错误:“expected an indented block”...一行中也可以有多个语句… 一、作为初学者,应该如何学python? 很多人对python缩进试的简洁表达不以为然。 那些都是已混迹于c和java的老鸟已经习惯了花括号。...“hello.py”是自己写的,那么如果一个陌生的py文件,我想知道里面都有… 以上就是这篇文章的主要内容了,希望本文的内容能对大家的学习或者工作能带来一定的帮助,python3中print打印需要使用括号...但是,我强烈建议你不要这样做,因为,那样会让你看起来就是一个python的新手或者“前cc++程序员…”,而不像一个专业的python程序员… 1、缩进 在python的世界里,通常是用缩进来表示一个段落

    5.1K40

    面试题集锦(一)

    : # print k python2中 print不加括号 # k=k/2 # A.9 B.10 # C.11 D.100 在pytho2中结果是9 在python3...在循环体内使用break语句或continue语句的作用相同 # D、从多层循环嵌套中退出时,只能使用goto语句 # 13、关于python中的复数,下列说法错误的是 # A、表示复数的语法是real...+image j # B、实部和虚部都是浮点数 # C、虚部必须后缀j且j不区分大小写 # D、方法conjugate返回复数的共轭复数 # 14、下面的语句哪个会无限循环下去:(B) # A、for...# 6、 Python中定义函数时如何书写可变参数和默认参数? 可变参数在默认参数之前 # 7、 *args和**kwargs在什么情况下会使⽤到?...for # 要求写⼀段代码,实现两个字典的相加,不同的key对应的值保留,相同的key对应的值相加后保 # 留,如果是字符串就拼接,如上⽰例得到结果为: # dictc = {“a”:1,”b”:5,

    41310

    Python | 深入浅出字符串

    本文授权转自极客时间专栏:(Python核心技术与实战) (2 天倒计时!扫码购买加微信返现 18 元) Python的程序中充满了字符串(string),在平常阅读代码时也屡见不鲜。...字符串同样是Python中很常见的一种数据类型,比如日志的打印、程序中函数的注释、数据库的访问、变量的基本操作等等,都用到了字符串。 当然,我相信你本身对字符串已经有所了解。...今天这节课,我主要带你回顾一下字符串的常用操作,并对其中的一些小tricks详细地加以解释。 字符串基础 什么是字符串呢?...这里,我着重讲解一下,使用加法操作符'+='的字符串拼接方法。因为它是一个例外,打破了字符串不可变的特性。...在新版本的Python(2.5+)中,下面的两个字符串拼接操作,你觉得哪个更优呢?欢迎留言和我分享你的观点,也欢迎你把这篇文章分享给你的同事、朋友。

    1.3K20
    领券