python基本数据类型及常用功能
1、数字类型 int
-int(将字符串转换为数字)
a = ""
print(type(a),a)
b = int(a)
print(type(b),b)
num = ""
v = int(num,base=16)
print(v)
PS:type打印数据类型,base=16是把num以16进制格式打印出十进制结果。
-bit_lenght(当前数字的二进制位数)
age = 5
r = age.bit_length()
print(r)
PS:5的二进制数为101(三位数),所以打印结果为3。
2、字符串类型 str
-capitalize(首字母大写)
test = "alex"
v = test.capitalize()
print(v)
PS:输出Alex。
-lower和casefold和islower(前两个将所有字母变小写,casefold更高级,可以对很多未知的特殊符号变小写,最后一个判断是否为小写)
test = "aLex"
v1 = test.casefold()
print(v1)
v2 = test.lower()
print(v2)
test = "aLex"
v = test.islower()
print(v)
PS:第一段输出alex,第二段输出False,upper和issupper同上,对字符串大写和判断字符串是否为大写。
-center和ljust和rjust(都是设置宽度,然后将内容居中、左对齐、右对齐)
test = "aLex"
v = test.center(20,"*")
print(v)
test = "aLex"
v = test.ljust(20,"*")
print(v)
test = "aLex"
v = test.rjust(20,"*")
print(v)
PS:分别输出********aLex********、aLex****************、****************aLex,20代指设置的总长度,”*“为填充内容且只能为一个字符(可为中文),不填默认空格。
-count(在字符串中寻找子序列出现次数)
test = "aLexalexr"
v1 = test.count('ex')
print(v1)
v2 = test.count('ex',5,6)
print(v2)
PS:表示在字符串中查找ex出现的次数,5,6表示查找范围限定在第5到第6个字符之间,v1输出2,v2输出0。
-endswith和startswith(以什么字符结尾和以什么字符开始)
test = "aLex"
v1 = test.endswith('ex')
print(v1)
v2 = test.startswith('ex')
print(v2)
PS:v1为True,v2为Flase,'ex'后面可以加参数表示在哪个区间中判断。
-find和index(从字符串从前往后找到第一次出现的子字符串的位置)
test="alexalex"
v1 = test.find('ex')
print(v1)
v2 = test.find('ex',5,8)
print(v2)
PS:v1输出2,v2表示在[5,8)区间里查找,如果查找无结果返回-1,index用法同上,但是查找无结果会报错,推荐使用find。
-format(格式化,将字符串中的占位符替换为指定的值)
test = 'i am {name},age{a}'
print(test)
v = test.format(name='alex',a=19)
print(v)
test = 'i am {0},age{1}'
print(test)
v = test.format('alex',19)
print(v)
PS:两段代码输出结果一样,说明可以按序号顺序替换内容。
-isalnum和isalpha(前者判断字符串是否只包含字母和数字,后者判断是否为字母和汉字)
test = "uasf_+"
v = test.isalnum()
print(v)
test="as2df"
v = test.isalpha()
print(v)
PS:第一段输出False,如果去掉_+则输出True;第二段输出False,如果去掉2则输出True。
-expandtabs(对字符串按字符数断句)
test="usebcsdy\tsdvdve"
v = test.expandtabs(6)
print(v)
PS:每6个字符断句,当遇到\t自动断掉并占用剩下的字符数,打印结果为usebcs dy\t sdvdve。
-isdecimal和isdigit和isnumeric(判断输入是否是数字,第一个常用,因为能用于计算,第二个对特殊数字也能识别,第三个对中文数字也能识别)
test="②"
v1 = test.isdecimal()
v2 = test.isdigit()
print(v1,v2)
test="二"
v1 = test.isdecimal()
v2 = test.isdigit()
v3 = test.isnumeric()
print(v1,v2,v3)
PS:第一段v1输出False,v2输出True;第二段v1、v2输出False,v3输出True。
-isidentifier(用来判断变量名是否合法)
a = "def"
v = a.isidentifier()
print(v)
PS:输出True,isidentifier只能判断字母,数字和下划线的规则。
-isprintable(是否存在不可显示的字符)
test = "oiuas\tdfkj"
v = test.isprintable()
print(v)
PS:\t打印出后不显示,所以输出False,去掉\t则输出True。
-isspace(判断是否全部是空格)
test = ""
v = test.isspace()
print(v)
PS:空字符串输出False,全部是空格时才输出True。
-title和istitle(前者转换为每个单词首字母大写的标题格式,后者判断是否为标题格式)
test = "Return True if all cased characters in S are uppercase and there is"
v1 = test.title()
print(v1)
v2 = test.istitle()
print(v2)
PS:v1把所有单词首字母大写,v2输出False。
-join(将字符串中的每一个元素按照指定分隔符进行拼接)
test = "女朋友是芳芳"
v = " ".join(test)
print(v)
PS:输出“女 朋 友 是 芳 芳”,空格也可以替换为其他符号进行拼接。
-strip和lstrip和rstrip(从两侧、左侧、右侧移除指定字符串并优先匹配最多的子字符串,默认移除空格、\t、\n)
test = " alex "
v1 = test.strip()
v2 = test.lstrip()
v3 = test.rstrip()
print(v1,v2,v3)
test = "alexxa"
v = test.rstrip('xa')
print(v)
PS:第一段输出alex、alex(空格)、(空格)alex,第二段输出ale。
-maketrans和translate(创建对应字符和进行替换)
v = "liuguifangxiaobaobei"
m = str.maketrans("aeiou","")
new_v = v.translate(m)
print(new_v)
PS:将字符串中的aeiou替换为12345,输出l35g53f1ngx314b14b23。
-partition和rpartition、split和rsplit(前两个从左和从右按照给定字符分割字符串为包含分割字符的三部分,后两个分割为不包括分割字符的多段)
test = "testasdsddfg"
v1 = test.partition('s')
v2 = test.split('s')
print(v1,v2)
PS:v1输出['te','s','tasdsddfg'],rpartition则从右边第一个s进行分割,v2输出['te','ta','d','ddfg'],‘s’后还可以加参数设置分割几个s,rsplit则从右分割。
-splitlines(只能根据换行符进行分割)
test = "liu\ngui\nfang\n"
v = test.splitlines(False)
print(v)
PS:输出['liu','gui','fang'],参数True和False决定是否保留换行符。
-swapcase(所有字符大小写转换)
test = "aLex"
v = test.swapcase()
print(v)
PS:输出AlEX。
-replace(替换字符串中的子字符串)
test = "liuguifangu"
v = test.replace("gu",'bbb')
print(v)
PS:输出"liubbbifangu",‘bbb'后还可以加参数设置要替换的字符串个数。
3、列表类型 list
-append(在原来的列表后面追加)
li = [11,22,33,44]
li.append(5)
li.append("alex")
li.append([1234,2314])
print(li)
PS:输出[11,22,33,44,'alex',[1234,2314]]。
-clear(清空列表)
li = [11,22,33,44]
li.clear()
print(li)
PS:输出[],为空字符串。
-copy(拷贝字符串)
li = [11,22,33,44]
v = li.copy()
print(v)
PS:此拷贝为浅拷贝。
-count(计算元素出现的次数)
li = [11,22,33,22,44]
v = li.count(22)
print(v)
PS:输出2。
-extend(扩展原列表)
li = [11,22,33,44]
li.extend([9898,"刘贵芳"])
li.extend("刘贵芳")
print(li)
PS:输出[11,22,33,44,9898,'刘贵芳',‘刘’,’贵‘,‘芳’],extend是一个可迭代对象,即按字符扩展,append则会以一个整体追加到后面。
-index(根据值获取索引位置)
li = [11,22,33,22,44]
v = li.index(22)
print(v)
PS:左侧开始索引,当索引到给定值则停止索引,输出1。
-insert(在指定索引位置插入元素)
li = [11,22,33,44]
li.insert(0,99)
print(li)
PS:表示在位置0插入99,输出[99,11,22,33,44]。
-pop(删除某个值,并可获取删除的值)
li = [11,22,33,44]
v = li.pop()
print(li)
print(v)
PS:pop默认参数则删除最后一个,可以加参数指定删除值,输出li为[11,22,33],v输出44。
-remove(删除列表中的指定值)
li = [11,22,33,22,44]
li.remove(22)
print(li)
PS:左侧开始检索,删除值后停止检索,输出[11,33,22,44]。
-reverse(翻转列表)
li = [11,22,33,44]
li.reverse()
print(li)
PS:输出[44,33,22,11]。
-sort(对列表进行排序)
li = [11,44,22,33,]
li.sort()
print(li)
li.sort(reverse=True)
print(li)
PS:输出[11,22,33,44]和[44,33,22,11],默认从小到大排序。
4、元组类型 tuple
-count(获取指定字符在元组中出现的次数)
tu = (11,22,33,22,44,)
v = tu.count(22)
print(v)
PS:输出2。
-index(根据值获取索引位置)
tu = (11,22,33,22,44,)
v = tu.index(22)
print(v)
PS:左侧开始检索,当索引到给定值则停止索引,输出1。
5、字典 dict
-fromkeys(根据序列创建字典,并指定统一的值)
v = dict.fromkeys(["k1",123,""],123)
print(v)
PS:输出{123:123,'k1':123,'999':123},注意字典是无序的。
-get(根据key获取值)
dic = {"k1":'v1',"k2":'v2'}
v = dic.get('k1',111)
print(v)
PS:输出v1,如果k1不在字典里,则输出参数111,如无参数默认输出None。
-pop和popitem(删除并获取值)
dic = {"k1":'v1',"k2":'v2'}
v = dic.pop('k1',90)
print(dic,v)
k,v = dic.popitem()
print(dic,k,v)
PS:前者删除给定键的键值并返回值,如果不存在键则返回参数90;后者随机删除一对键值并返回键值对。
-setdefault(在字典中设置值)
dic = {"k1":'v1',"k2":'v2'}
v = dic.setdefault('k11','')
print(dic,v)
PS:输出{'k1':'v1','k11':'123''','k2':'v2'} 123,若字典中包含给定键,则返回该键对应的值,否则返回为该键设置的值。
-update(更新字典)
dic = {"k1":'v1',"k2":'v2'}
dic.update(k1=123,k3=456,k5="asdf")
print(dic)
PS:输出{'k1':123,'k5':'asdf','k2':'v2','k3':345},当字典里有给出的key时更新值,没有时则加入键值对。
-keys和values和items(提取字典的全部键、值、键值对)
dic = {"k1":'v1',"k2":'v2'}
v1 = dic.keys()
v2 = dic.values()
v3 = dic.items()
print(v1,v2,v3)
PS:字典还有clear(清除)、copy(拷贝)等用法和其他数据类型类似,就不提了(主要是懒)。
python基本数据类型及常用功能的更多相关文章
- Python 基本数据类型_常用功能整理
一.字符串 字符串 s ="axle" #去两端空格 s.split() #以什么开头 s.startswith("a") #查找子序列,"12&qu ...
- Python - 基本数据类型及其常用的方法之字典和布尔值
字典 特点:{"key1": value1, "key2":value2} , 键值对中的值可以为任何数据类型,键不能为列表.字典(无法哈希),布尔值可以为键 ...
- Python - 基本数据类型及其常用的方法之元组
元组 特点:一级元素无法被修改,且不能被增加或者删除. 基本操作: tu = (11, 22, ["aiden", 33, ("qwe", 11)], 77) ...
- python 基本数据类型之字符串功能
字符串常用功能: # name.upper() #全部大写变小写 # name.lower() #全部小写变大写 # name.split() #分割 # name.find() #找到指定子序列的索 ...
- 【python】【logging】python日志模块logging常用功能
logging模块:应用程序的灵活事件日志系统,可以打印并自定义日志内容 logging.getLogger 创建一个log对象 >>> log1=logging.getLogger ...
- python中time模块常用功能
import time time模块提供了大量对时间进行处理的方法 time.time() # 获取当前时间戳,得到自1970年开始的秒数 >>>time.time() 155487 ...
- Python - 基本数据类型及其常用的方法之数字与字符串
数字(int): 1.int()(将字符串换为数字) a = " print(type(a), a) b = int(a) print(type(b), b) num = "a&q ...
- Python - 基本数据类型及其常用的方法之列表
列表: 特点:用 [] 括起来,切元素用逗号分隔:列表内的元素可以为任何的数据类型. 列表的基本操作: 1.修改 li = [12, 5, 6, ["Aiden", [2, 4], ...
- Python【第二篇】运算符及优先级、数据类型及常用操作、深浅拷贝
一.运算符及优先级 Python 运算符(算术运算.比较运算.赋值运算.逻辑运算.成员运算) 1.算数运算符 运算符 描述 实例,a=20,b=10 + 加 a+b输出结果30 - 减 a-b输出结果 ...
随机推荐
- HTML5 01. 布局、语义化标签、智能化表单、表单元素/标签/属性/事件、多媒体、类操作、自定义属性
1.知识点 lang = “en” 所用语言是英文 文档结构更简洁 IE8一下不支持h5c3 书写更宽松 div没有语义 标签语义化:在合适的地方使用合适的标签 对seo优化友谊 网页经典布局 页 ...
- 【LeetCode】116#填充同一层的兄弟节点
题目描述 给定一个二叉树 struct TreeLinkNode { TreeLinkNode *left; TreeLinkNode *right; TreeLinkNode *next; } 填充 ...
- Dapper学习(二)之Query相关
0. FIrst , Single & Default 使用这个方法时要小心,First 和 Single 是不同的. 这里,对这个表做下说明: 如果使用 First , 当没有查到元素时,会 ...
- Spring boot出现Cannot determine embedded database driver class for database type NONE
在spring boot项目中,我们在pom.xml文件中添加了mysql和mybatis的依赖,我们常常遇到下面这样的问题: Description: Cannot determine embedd ...
- springcloud(六):Spring Cloud 配置中心采用数据库存储配置内容
Spring Cloud 配置中心采用数据库存储配置内容 转自:Spring Cloud Config采用数据库存储配置内容[Edgware+] Spring Cloud Server配置中心采用了G ...
- Java Web总结(二)-- 上传和下载
在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接 ...
- Nacos配置服务原理
Nacos Client配置机制 spring加载远程配置 在了解NACOS客户端配置之前,我们先看看spring怎么样加载远程配置的.spring 提供了加载远程配置的扩展接口 PropertySo ...
- 模板引擎Velocity学习系列-#set指令
#set指令 #set指令用于向一个变量或者对象赋值. 格式: #set($var = value) LHS是一个变量,不要使用特殊字符例如英文句号等,不能用大括号括起来.测试发现#set($user ...
- python实例化时带括号与不带
1.首先这个标题题目不是很准确,但一时又想不到更好的标题所以只好用这个标题,下面我们来看看为什么. 首先我们要明白python中类的实例化是要加上括号的,那么不加括号是什么意思你,看代码 class ...
- uboot学习之uboot.bin的运行流程
上篇博客:http://www.cnblogs.com/yeqluofwupheng/p/7347925.html 讲到uboot-spl的工作流程,接下来简述一下uboot.bin的工作流程,这对应 ...