返回顶部
首页 > 资讯 > 后端开发 > Python >【Python3】04、内置数据结构
  • 842
分享到

【Python3】04、内置数据结构

数据结构 2023-01-31 08:01:40 842人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

1、把字符串形式的整数或浮点数转化为int或float, 不适用int和float函数In [57]: str1 = "2468.1357" In [58]: d1 = {"0":0, "1":1, "2":2, "3":3, "4":4



1、把字符串形式的整数或浮点数转化为int或float, 不适用int和float函数

In [57]: str1 = "2468.1357"

In [58]: d1 = {"0":0, "1":1, "2":2, "3":3, "4":4, "5":5, "6":6, "7":7, "8":8, "
    ...: 9":9}
    
In [59]: int1, float1 = str1.split(".")     #整数就报错了,不够严谨

In [60]: sum1 = 0

In [61]: sum2 = 0

In [62]: for k, v in enumerate(int1):
    ...:     sum1 += d1[v] * 10 ** (len(int1) - k - 1)
    ...: for i, j in enumerate(float1):
    ...:     sum2 += d1[j] * 10 ** (-(i + 1))
    ...: print(sum1 + sum2)
    ...: 
2468.1357

#############
In [75]: mapping = {str(x):x for x in range(9)}

In [76]: mapping
Out[76]: {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8}

In [78]: s.partition('.')
Out[78]: ('123', '.', '456')

In [81]: s = "123"

In [82]: s.partition('.')
Out[82]: ('123', '', '')

In [83]: s = "12.3"

In [84]: s.partition('.')
Out[84]: ('12', '.', '3')

In [93]: s = "123.456"

In [94]: i, _, f = s.partition('.')

In [97]: ret = 0

In [98]: for idx, x in enumerate(i[::-1]):
    ...:     ret += mapping[x] * 10 ** idx
    ...:     

In [99]: ret
Out[99]: 123

In [100]: for idx, x in enumerate(f):
     ...:     ret += mapping[x] / 10 ** (idx+1)
     ...:     

In [101]: ret
Out[101]: 123.456        #结果可能会有精度的问题


###先全部当成整数来运算###
In [106]: ret = 0

In [107]: for idx, x in enumerate((i+f)[::-1]):
     ...:     ret += mapping[x] * 10 ** idx
     ...:     

In [108]: ret / 10 ** len(f)
Out[108]: 123.456             #精度损失会少一点


2、移除一个列表中的重复元素,并保持列表原来的顺序

In [33]: l1 = [1, 3, 5, 7, "a", 7, 3, 1, "a", "b", "ab"]

In [34]: l2 = []

In [35]: for i in l1:
    ...:     if i not in l2:         #O(n),效率不高
    ...:         l2.append(i)
    ...: print(l2)
    ...: 
[1, 3, 5, 7, 'a', 'b', 'ab']

###############
In [7]: l1 = [1, 3 ,5, 7, "a", "b", 5, 3, 1, "ab"]

In [8]: s = set()

In [9]: new_lst = []

In [10]: for x in l1:
    ...:     if x not in s:         #O(1),空间换时间
    ...:         new_lst.append(x)
    ...:     s.add(x)
    ...:     

In [12]: new_lst
Out[12]: [1, 3, 5, 7, 'a', 'b', 'ab']


3、统计文本中各单词出现的次数

In [170]: str1 = '''Hello world  I like python i like Python too he he python i
     ...:  i world'''

In [171]: l1 = str1.split()

In [172]: j = 1

In [173]: d1 = {}

In [174]: for x in l1:
     ...:     if x not in d1:       #思路对了
     ...:         d1[x] = j
     ...:     else:
     ...:         d1[x] += 1
     ...: print(d1)
     ...: for k in d1:
     ...:     print("The {} count: {}".fORMat(k, d1[k]))
     ...:     
{'i': 3, 'Python': 1, 'I': 1, 'too': 1, 'python': 2, 'like': 2, 'Hello': 1, 'he': 2, 'world': 2}
The i count: 3
The Python count: 1
The I count: 1
The too count: 1
The python count: 2
The like count: 2
The Hello count: 1
The he count: 2
The world count: 2
########################
In [124]: s = "i am very very love python"

In [125]: counter = {}

In [126]: for Word in s.split():
     ...:     if word not in counter.keys():
     ...:         counter[word] = 0
     ...:     counter[word] += 1
     ...: counter
     ...:  
Out[126]: {'am': 1, 'i': 1, 'love': 1, 'python': 1, 'very': 2}

#####更简洁的判断方法##########
counter[word] = counter.get(word, 0)+ 1


4、把1~4000 之间的任意整数转化为罗马数字

罗马数字是阿拉伯数字传入之前使用的一种数码。罗马数字采用七个罗马字母作数字:

Ⅰ(1)、X(10)、C(100)、M(1000)、V(5)、L(50)、D(500)。

记数的方法:

  1.    相同的数字连写,所表示的数等于这些数字相加得到的数,如 Ⅲ=3;

  2.    小的数字在大的数字的右边,所表示的数等于这些数字相加得到的数,如 Ⅷ=8、Ⅻ=12;

  3.    小的数字(限于 Ⅰ、X 和 C)在大的数字的左边,所表示的数等于大数减小数得到的数,如 Ⅳ=4、Ⅸ=9;

  4.    在一个数的上面画一条横线,表示这个数增值 1,000 倍,如 =5000。

############################


--结束END--

本文标题: 【Python3】04、内置数据结构

本文链接: https://lsjlt.com/news/192682.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 【Python3】04、内置数据结构
    1、把字符串形式的整数或浮点数转化为int或float, 不适用int和float函数In [57]: str1 = "2468.1357" In [58]: d1 = {"0":0, "1":1, "2":2, "3":3, "4":4...
    99+
    2023-01-31
    数据结构
  • python内置数据结构
    1、列表--是一个序列,用于顺序的存储数据列表的定义与初始化In [374]: lst = list() In [375]: lst Out[375]: [] In [376]: lst = [] In [377]: lst = [1...
    99+
    2023-01-31
    数据结构 python
  • week02_python内置数据结构_
    > 数值型: int、float、complex、bool都是class,1,5.0,2+3j都是对象即实例;int:python3的int就是长整型,且没有大小限制,受限于内存区域的大小;float:额整数部分和小数部分组成。...
    99+
    2023-01-31
    数据结构 week02_python
  • Python内置数据结构3
    解构In [8]: lst = [1,2] In [9]: lst Out[9]: [1, 2] In [10]: first,second = lst  #解构 In [11]: print(first,second) 1 2按照元...
    99+
    2023-01-31
    数据结构 Python
  • Python内置数据结构——bytes,
    bytes,bytearray字符串与bytes字符串是字符组成的有序序列,字符可以使用编码来理解bytes是字节组成的有序的不可变序列bytesarray是字节组成的有序的可变序列编码与解码字符串按照不同的字符集编码encode返回字序列...
    99+
    2023-01-31
    数据结构 Python bytes
  • python3第六天(数据结构)
    python3列表:    列表是可修改。    列表可以当作栈来使用(先进后出),利用append()和pop()方法。    列表也可以当队列来使用,利用popleft()方法。    列表推导式:对某个序列的所有元素依次进行...
    99+
    2023-01-31
    数据结构 第六天
  • Python内置数据结构——列表list
    内置数据结构分类:数值型int , float , complex , bool序列对象字符串 str列表 listtuple(元组)键值对集合 set字典 dict数字型int ,float , complex , bool都是class...
    99+
    2023-01-31
    数据结构 列表 Python
  • python3常用内置函数总结
    #(1)作用域print(globals()) #全局作用域,显示出全局所有函数和变量名print(locals()) #本地作用域,显示出当前所处作用域的函数和变量名 #(2)输入与输出a = input('请输入内容:') #...
    99+
    2023-01-31
    函数 常用
  • python中有哪些内置数据结构
    这篇文章给大家介绍python中有哪些内置数据结构,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。python的数据类型有哪些python的数据类型:1. 数字类型,包括int(整型)、long(长整型)和float(浮...
    99+
    2023-06-14
  • Python中有什么内置数据结构
    本篇内容主要讲解“Python中有什么内置数据结构”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中有什么内置数据结构”吧!Python可谓是如今最流行的编程语言,甚至孩子们也可以从它...
    99+
    2023-06-16
  • python学习3-内置数据结构3-by
    一、字符串与bytesstr是文本系列,有编码,bytes是字节系列,没有编码,文本的编码是字符如何用字节来表示。都不可变,python3默认使用utf8。文本转换编码:s.encode(['编码方式'])编码转换文本:s.decode([...
    99+
    2023-01-31
    数据结构 python
  • Python3数据结构知识点有哪些
    本篇内容主要讲解“Python3数据结构知识点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python3数据结构知识点有哪些”吧!数字 Number整型(int) - 通常被称为是整型或...
    99+
    2023-06-29
  • python学习3-内置数据结构3-字符
    字符串是集合类型1、定义s = 'hello python's = "hellp python"以上2种没有区别s = '''hello python'''s = """hello python"""以上2种没有区别区别在于三引号可以定义多...
    99+
    2023-01-31
    数据结构 字符 python
  • python学习3-内置数据结构1-列表
    列表及常用操作    列表是一个序列,用于顺序的存储数据1、定义与初始化lst = list() #使用list函数定义空列表lst = []    #使用中括号定义列表lst = [1,2,3]    #使用中括号定义初始值列表lst =...
    99+
    2023-01-31
    数据结构 列表 python
  • python学习3-内置数据结构2-元组
    元组是不可变的,可hash 1、定义t = tuple()t = (1,2,3)2、查t[index] #按照下标获取值t.index(value) #按照值获取下标值,不存在报value errott.count(value) #获取某个...
    99+
    2023-01-31
    数据结构 python
  • Python内建数据结构详解
    一、列表(List) list 是一个可以在其中存储一系列项目的数据结构。list 的项目之间需用逗号分开,并用一对中括号括将所有的项目括起来,以表明这是一个 list 。下例用以展示 list 的一些基...
    99+
    2022-06-04
    数据结构 内建 详解
  • 4种非常实用的python内置数据结构
    array Python不仅仅可以使用内置的list实现数组,还支持像C语言那样的指定类型的原生数组array。 很显然,因为list可以存储各种类型的对象,而array只存储一个指定的原生类型,所以当数据量较大时...
    99+
    2022-06-02
    python 数据结构 python 内置数据结构
  • redis数据结构有哪些内容
    本篇内容主要讲解“redis数据结构有哪些内容”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“redis数据结构有哪些内容”吧!redis不只是一个简单的键(ke...
    99+
    2024-04-02
  • Python内置数据结构列表与元组示例详解
    目录1. 序列 2. 列表 2.1 列表的特性2.1.1 列表的连接操作符和重复操作符 2.1.3 列表的索引 2.1.4 列表的切片 2.1.5 列表的循环(for) 2.2 列表...
    99+
    2024-04-02
  • python 之 python3内置函数
    一. 简介   python内置了一系列的常用函数,以便于我们使用,python英文官方文档详细说明:点击查看, 为了方便查看,将内置函数的总结记录下来。   二. 使用说明...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作