python3的基本数据类型:

Number(数字)、String(字符串)、List(列表)、Tuple(元组)、Set(集合)、Dictionary(字典)

不可变数据类型(3 个):Number(数字)、String(字符串)、Tuple(元组);
可变数据类型(3 个):List(列表)、Dictionary(字典)、Set(集合)

字符串操作

song='   lele is a lovely son, forver lovely !  '
# .查找 字符
print(song.find('e'))
print(song.find('e',,len(song))) # .切片操作
print(song[:])
print(song[:])
print(song[:])
print(song[-:-]) # .字符串相加
# 和Java中的字符串一样,不能直接改变字符串的值,更新字符串时候可以用切片技术 song1 = 'lele' + song[:]
print(song1) # . 将字符串第一个字符大写
print(song.strip().capitalize()) # .将整个字符串小写 song.casefold() # . 字符串居中 print(song.center()) # .count(sub[,start[,end]]):sub从start到end出现的次数(默认是整个字符串) print(song.count('e')) # . endswith(sub)判断是否是以哪个字符串结尾 print(song.endswith(' ')) # .isalnum():判断s是否是数字或者字母
print(song.isalnum()) # . isspace():判断是否是空格
print(song.isspace()) # . isdigit():判断是否都是数字组成 print(song.isdigit()) # .isalpha():判断是否都是由字母组成的 print(song.isalpha()) # .islower():判断是否都是由小写字母组成的 print(song.islower()) # .istitle():判断是否是标题形式字符串(即是连续字符串只有第一个字母大写,其他都是小写,若是有空格,则每个分隔的字符串都满足此) print(song.istitle()) # isupper():判断是否都是由大写字母组成的 print(song.isupper()) # . join(sub) print(song.join('++')) # . lstrip():去掉字符串左边所有空格 print(song.lstrip('')) # .rstrip():去掉字符串右边的空格 print(song.rstrip())
# . replace(old,[,new][,count]):将字符串中的old子串替换为new,替换count次 print(song.replace('lele','leleyao'))
print(song.replace('leleyao','lele')) # .rfind(sub[,start][,end]):从右边开始查找字符串中子串从start到end出现的位置并返回下标(注意start和end是从左往右的,返回的也是从左到右的位置。) song.rfind('lele') # .split(sep):将字符串用给定的标准分割,并且以列表形式返回分割后的元素组 print(song.split(' ')) # .startwith(sub[,start][,end]):判断从start到end是否以sub开头 print(song.startswith('lele')) # . strip():去掉字符串左右两边的空格 print(song.strip()) # .swapcase():将字符串的大小写反转 print(song.swapcase()) # . title()将字符串标题化(即是连续字符串的第一个字母大写,其他都是小写空格,分隔的字符串都遵循此规则) print(song.title()) # translate 转换 print(song.maketrans('s','b')) # print(song.translate()) # .upper():将整个字符串都大写 print(song.upper()) # .zfill(width):用''来填充不够的空格(是从左边开始填充) print(song.zfill()) # .lower():将整个字符串都小写 song.lower() # . 格式化 print('%d' %()) # . format()
'{0} love {1}{2}'.format('I','my','home')
'{a} love {b} {c}'.format(a='I',b='my',c='home')

列表操作


li = [] li.append('a') # 在列表li中添加一个a字符串
li.insert(, 'b') # 在列表li的第3位插入b字符串
li.extend('mu') # 在列表li末尾增加两个字符串'm', 'u',改函数将可迭代对象分解为最小单元,再插入列表末尾,所以纯数字插不了,而数组可以 删
li.pop() # 删除li中第2个元素,不填写参数则默认删除最后一个,有返回值
li.remove('mumu') # 按元素删除,即删除元素‘mumu’
li.clear() # 清空列表 del li # 删除列表li,del 适用于所有对象的删除
del li[:] #切片删除 改
li[] = 'c' #第一位改为字符串c
li[: ] = 'mu' # 切片改,第一到第二位改为'm','u',或者即替换[],[]位 查
print(li[: ]) # 打印出来即可查看 公共方法 len(li) # 测li的长度
li.count('mu') # 测mu出现的次数
li.index('mu') # 找mu的位置,可切片 li.sort() # 正向排序
li.sort(Ture) # 反向排序 li.reverse() # 反转 嵌套 len(li) # 测li的长度
li.count('mu') # 测mu出现的次数
li.index('mu') # 找mu的位置,可切片 li.sort() # 正向排序
li.sort(Ture) # 反向排序 li.reverse() # 反转

元组操作

元组的“改”

当元组中有list时,可对元组中的list进行修改,如:
>>> song=(,,,[,,])
>>> song[][]=
>>> print(song)
(, , , [, , ]) 元组的“删” 只能删除整个对象 元组运算符
  len() 计算元组的长度,如 len(,,) =
连接 将多个元组连接到一块,如 :tuple1 = (,,,,);tuple2 = (,,,,); tuple3 = tuple1 + tuple2=(, , , , , , , , , )
  查询 x in (x,y.z) 返回值是True
 拓展
  cmp(tuple1,tuple2) :比较两个元组元素。
  max(tuple) :返回元组中元素最大值。
min(tuple) : 返回元组中元素最小值。
tuple(list) : 将列表转换为元组

集合运算

python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和sysmmetric difference(对称差集)等数学运算.

sets 支持 x in set, len(set),和 for x in set。作为一个无序的集合,sets不记录元素位置或者插入点。因此,sets不支持 indexing, slicing, 或其它类序列(sequence-like)的操作。

>>> x = set('spam')
>>> y = set(['h','a','m'])
>>> x, y
(set(['a', 'p', 's', 'm']), set(['a', 'h', 'm'])) 再来些小应用。 >>> x & y # 交集
set(['a', 'm']) >>> x | y # 并集
set(['a', 'p', 's', 'h', 'm']) >>> x - y # 差集
set(['p', 's']) 记得以前个网友提问怎么去除海量列表里重复元素,用hash来解决也行,只不过感觉在性能上不是很高,用set解决还是很不错的,示例如下: >>> a = [,,,,,]
>>> b = set(a)
>>> b
set([, , , ])
>>> c = [i for i in b]
>>> c
[, , , ] 很酷把,几行就可以搞定。 1.8 集合 集合用于包含一组无序的对象。要创建集合,可使用set()函数并像下面这样提供一系列的项: s = set([,,,]) #创建一个数值集合 t = set("Hello") #创建一个唯一字符的集合 与列表和元组不同,集合是无序的,也无法通过数字进行索引。此外,集合中的元素不能重复。例如,如果检查前面代码中t集合的值,结果会是: >>> t set(['H', 'e', 'l', 'o']) 注意只出现了一个'l'。 集合支持一系列标准操作,包括并集、交集、差集和对称差集,例如: a = t | s # t 和 s的并集 b = t & s # t 和 s的交集 c = t – s # 求差集(项在t中,但不在s中) d = t ^ s # 对称差集(项在t或s中,但不会同时出现在二者中) 基本操作: t.add('x') # 添加一项 s.update([,,]) # 在s中添加多项 使用remove()可以删除一项: t.remove('H') len(s)
set 的长度 x in s
测试 x 是否是 s 的成员 x not in s
测试 x 是否不是 s 的成员 s.issubset(t)
s <= t
测试是否 s 中的每一个元素都在 t 中 s.issuperset(t)
s >= t
测试是否 t 中的每一个元素都在 s 中 s.union(t)
s | t
返回一个新的 set 包含 s 和 t 中的每一个元素 s.intersection(t)
s & t
返回一个新的 set 包含 s 和 t 中的公共元素 s.difference(t)
s - t
返回一个新的 set 包含 s 中有但是 t 中没有的元素 s.symmetric_difference(t)
s ^ t
返回一个新的 set 包含 s 和 t 中不重复的元素 s.copy()
返回 set “s”的一个浅复制 请注意:union(), intersection(), difference() 和 symmetric_difference() 的非运算符(non-operator,就是形如 s.union()这样的)版本将会接受任何 iterable 作为参数。相反,它们的运算符版本(operator based counterparts)要求参数必须是 sets。这样可以避免潜在的错误,如:为了更可读而使用 set('abc') & 'cbs' 来替代 set('abc').intersection('cbs')。从 2.3. 版本中做的更改:以前所有参数都必须是 sets。 另外,Set 和 ImmutableSet 两者都支持 set 与 set 之间的比较。两个 sets 在也只有在这种情况下是相等的:每一个 set 中的元素都是另一个中的元素(二者互为subset)。一个 set 比另一个 set 小,只有在第一个 set 是第二个 set 的 subset 时(是一个 subset,但是并不相等)。一个 set 比另一个 set 打,只有在第一个 set 是第二个 set 的 superset 时(是一个 superset,但是并不相等)。 子 set 和相等比较并不产生完整的排序功能。例如:任意两个 sets 都不相等也不互为子 set,因此以下的运算都会返回 False:a<b, a==b, 或者a>b。因此,sets 不提供 __cmp__ 方法。 因为 sets 只定义了部分排序功能(subset 关系),list.sort() 方法的输出对于 sets 的列表没有定义。 运算符
运算结果 hash(s)
返回 s 的 hash 值 下面这个表列出了对于 Set 可用二对于 ImmutableSet 不可用的运算: 运算符(voperator)
等价于
运算结果 s.update(t)
s |= t
返回增加了 set “t”中元素后的 set “s” s.intersection_update(t)
s &= t
返回只保留含有 set “t”中元素的 set “s” s.difference_update(t)
s -= t
返回删除了 set “t”中含有的元素后的 set “s” s.symmetric_difference_update(t)
s ^= t
返回含有 set “t”或者 set “s”中有而不是两者都有的元素的 set “s” s.add(x) 向 set “s”中增加元素 x s.remove(x) 从 set “s”中删除元素 x, 如果不存在则引发 KeyError s.discard(x) 如果在 set “s”中存在元素 x, 则删除 s.pop() 删除并且返回 set “s”中的一个不确定的元素, 如果为空则引发 KeyError s.clear() 删除 set “s”中的所有元素 请注意:非运算符版本的 update(), intersection_update(), difference_update()和symmetric_difference_update()将会接受任意 iterable 作为参数。从 2.3. 版本做的更改:以前所有参数都必须是 sets。 还请注意:这个模块还包含一个 union_update() 方法,它是 update() 方法的一个别名。包含这个方法是为了向后兼容。程序员们应该多使用 update() 方法,因为这个方法也被内置的 set() 和 frozenset() 类型支持。

字典操作

D.clear()                              #移除D中的所有项
D.copy() #返回D的副本
D.fromkeys(seq[,val]) #返回从seq中获得的键和被设置为val的值的字典。可做类方法调用
D.get(key[,default]) #如果D[key]存在,将其返回;否则返回给定的默认值None
D.has_key(key) #检查D是否有给定键key
D.items() #返回表示D项的(键,值)对列表
D.iteritems() #从D.items()返回的(键,值)对中返回一个可迭代的对象
D.iterkeys() #从D的键中返回一个可迭代对象
D.itervalues() #从D的值中返回一个可迭代对象
D.keys() #返回D键的列表
D.pop(key[,d]) #移除并且返回对应给定键key或给定的默认值D的值
D.popitem() #从D中移除任意一项,并将其作为(键,值)对返回
D.setdefault(key[,default]) #如果D[key]存在则将其返回;否则返回默认值None
D.update(other) #将other中的每一项加入到D中。
D.values() #返回D中值的列表

python3基本数据类型的更多相关文章

  1. Python3 基本数据类型注意事项

    Python3 基本数据类型 教程转自菜鸟教程:http://www.runoob.com/python3/python3-data-type.html Python中的变量不需要声明.每个变量在使用 ...

  2. Python3 的数据类型

    Python3 的数据类型 整形,浮点型,布尔类型 类型转换 int() 整形 采用截断的方式即向下取整,比如 a=5.5 int (a) 返回值为5 怎样才能使int()按照"四舍五入&q ...

  3. Python3 常见数据类型的转换

    Python3 常见数据类型的转换 一.数据类型的转换,你只需要将数据类型作为函数名即可 OCP培训说明连接:https://mp.weixin.qq.com/s/2cymJ4xiBPtTaHu16H ...

  4. 3. Python3 基本数据类型

    Python3 基本数据类型 Python 中的变量不需要声明.每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建. 在 Python 中,变量就是变量,它没有类型,我们所说的"类型& ...

  5. python003 Python3 基本数据类型

    Python3 基本数据类型Python 中的变量不需要声明.每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建.在 Python 中,变量就是变量,它没有类型,我们所说的"类型&qu ...

  6. 【Python学习】Python3 基本数据类型

    参考学习地址:https://www.runoob.com/python3/python3-data-type.html Python3 基本数据类型 Python 中的变量不需要声明.每个变量在使用 ...

  7. Python3 基本数据类型

    Python中的变量不需要声明,每个变量使用前必须赋值,变量赋值后才会被创建,在Python中变量就是变量,它没有类型.我们所说的"类型"是变量所指的内存中对象的类型. 等号(=) ...

  8. python3 bytes数据类型探讨

    python3中str和bytes分开了,那么bytes与str之间到底是什么关系呢?下面从表现形式.处理方式.存储形式三个方面来阐述其区别 1. 在字符串前面加上b,就表示bytes数据类型 s1 ...

  9. Python3基本数据类型(五)

    Python中的变量不需要声明,每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建. 在Python中变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型 ...

随机推荐

  1. Keras Model Sequential模型接口

    Sequential 模型 API 在阅读这片文档前,请先阅读 Keras Sequential 模型指引. Sequential 模型方法 compile compile(optimizer, lo ...

  2. DSAPI WIN7风格

    在Winform项目中,有时需要将UI变成适应Vista/Windows7/8/10的风格,通过"选用"以下代码来使你的UI支持系统主题渲染. 注:该功能不支持XP,建议使用DS控 ...

  3. 操作Work、Excel、PDF

    操作Work.Excel.PDF 1.NPOI插件 namespace XBLRDiff.BLL.Excel {      public class ExcelImport:IDisposable   ...

  4. Raptor井字棋游戏

    作为大学第一个小作品,记录一下,也给那些想接触到Raptor游戏的人一个小小的参考QAQ至于Raptor的语法和使用,可以参考一下他的帮助手册,看不懂英文的话可以复制放到翻译上看. 以上是主函数 以下 ...

  5. Docker 容器镜像删除

    1.停止所有的container,这样才能够删除其中的images: docker stop $(docker ps -a -q) 如果想要删除所有container的话再加一个指令: docker ...

  6. 成为一名Java架构师的必修课

    一.热门框架源码学习 设计模式篇 Spring5源码解读篇 Mybatis篇 SpringBoot2篇 二. 微服务架构 架构设计篇 BAT互联网架构这些年的演进分析 国内外常见分布式系统架构状况介绍 ...

  7. IntelliJ IDEA下如何设置JSP模板

    今天在学习Spring MVC知识时,发现自己所用的IntelliJ IDEA中自动生成的JSP文件不支持EL表达式的使用,所以就想导入新的JSP模板,方便以后使用.根据旧模板的提示,如下图 找到Se ...

  8. Servlet常用的接口和类

    使用接口和类的作用:Servlet也是依靠继承父类和实现接口来实现的.使用Servlet必须要引入两个包:javax.servlet和javax.servlet.http.所有的Servlet应用都是 ...

  9. video.js 一个页面同时播放多个视频

    $(data).each(function(i, item) { // innerHTML += '<li type-id="'+item.id+'">'+ // '& ...

  10. 在react中实现打印功能

    最近项目中,前端采用react+antd+dva的组合,已经完成了后头管理类系统产品的更新迭代工作. 今天有一个新需求,需要在后台管理系统中实现点击打印完成指定页面的打印功能. 之前也没接触过,只知道 ...