基本数据结构(int,布尔,字符串,列表)
回顾:
T='我是%s,进度100%%'%('姓名')
字符串格式化内想要输出%,需要写两个%%
================今日内容================
- 整数 int类 int()
-x.bit_length()
#用最短的二进制表示十进制的值,输出二进制位数
#示例v=15 data=v.bit_length() print(data) #输出15用二进制表示的位数,4
- 布尔值 bool类 bool()
-bool()中0与''输出False,其他都是输出True
- 字符串 str类 str()
-类功能
-大写功能: x.upper()
#示例 v1='alex' v2=v1.upper() print(v2) #v2全部变大写 ALEX
-小写功能: x.lower()
#示例 v1='alEx' v2=v1.lower() print(v2) #v2全部变小写
-首字母变大写: x.capitalize()
#示例 v1='alex' v2=v1.capitalize() print(v2) #输出 Alex
-去除首尾空格: x.strip()
#示例 v1=' alex ' v2=v1.strip() print(v2) #输出:alex
#示例 name=input('请输入:') v=name.strip() if v=='alex':print('进入')
-去除左边或右边空格: x.lstrip()或x.rstrip()
-替换: x.replace('a','b') #a为x中原值,b为替换值
#示例v1="SCII第一次以规范标准的型态以规范标准的型态以规范标准的型态" v2=v1.replace('标准','####') print(v2) 输出:SCII第一次以规范####的型态以规范####的型态以规范####的型态
-分割: x.split('a') # x中以a进行分割,产生列表
x.split('a',n) # x中以第n个a进行分割,产生列表
#示例1 v1="SCII第一次以规范标准的型态以规范标准的型态以规范标准的型态" v2=v1.split('标准') print(v2) #输出: ['SCII第一次以规范', '的型态以规范', '的型态以规范', '的型态']#示例2v1="SCII第一次以规范标准的型态以规范标准的型态以规范标准的型态"v2=v1.split('标准',2)print(v2) #输出: ['SCII第一次以规范', '的型态以规范', '的型态以规范标准的型态']
-判断当前字符串中是否全部是数字: x.isdecimal() ;注:x.isdecimal() 输出的是True/False
#示例 v1='123' v2=v1.isdecimal() print(v2) #输出: True
#示例:查看字符串v中有几个数字v='asdf1w34f55'a=0for i in v: if i.isdecimal(): a+=1print(a)
-注:str类中的对原对象的操作,都不会改变原对象,只会生成一个新对象
-公共功能
-计算当前字符串长度: len(x)
#示例 v='徐芳名sdf' v1=len(v) print(v1) #输出: 6
-注:字符串的长度len(x)与字符串的位数是不同的,长度为6的字符串,最后一位是5,因为字符串中数位从0开始
-索引:列举字符串中对应的值
-单个值的索引: v[0] #字符串中数位从0开始,可用-1代表最后一位
#示例v = "ASCII第一次以规范标准的型态发"v1=v[0]print(v1) #输出: A
-多个值的索引:v[0:6] #左边是起始位(包含),右边是终值为(不包含)
#示例 v = "ASCII第一次以规范标准的型态发" #v1=v[0:-1] #输出:ASCII第一次以规范标准的型态 #v1=v[0:] #输出:ASCII第一次以规范标准的型态发 #v1=v[0:1] #输出:A print(v1)
-根据步长,索引多个值: v[1:15:3]
#3是步长,表示空2个字符 ;#1或不写步长,表示步长为0
#示例 v = "ASCII第一次以规范标准的型态发" v1=v[1:15:3] print(v1) #输出:SI次范的
#示例 #字符串 "ASCII第一次以规范标准的型态发"遍历输出 v = "ASCII第一次以规范标准的型态发" i=0 a=len(v) while i<a:print(v[i],) #输出A i+=1 #输出S ....
-for循环: for i in v: #将v中的每一个元素,都给挨个给i赋值一遍
#示例 v = "ASCII第一次以规范标准的型态发" for i in v:print(i) #输出:A#输出:S......
=====================整数int,字符串str,布尔bool三者的转换===================
- 字符串或布尔值 -> 整数 int(字符串或布尔值)
- int(字符串):只能是纯数字的字符串才可转化成整数,含字符报错
- int(布尔值):True为1,False为0
- 字符串或整数 -> 布尔值 bool(字符串或整数)
- bool(字符串):空字符串''为False,其他为True
- bool(整数):0为False,其他为True
- 整数或bool值 -> 字符串
#示例v=' 'a=bool(v)print(a) #输出: True#示例#a=1 or 0 #输出:1 #a=0 or 2 #输出:2#a=1 and 2 #输出:2#a=0 and 1 #输出:0print(a)
=======================================================================
- 列表 list类
- 类功能
- 列表中追加一个值(修改本身): x.append('aaa') #在x列表中最后添加一个新元素'aaa'
#示例v = [11,22,33,44,"蒋毅"]v.append('aaa')print(v) #输出: [11,22,33,44,"蒋毅",'aaa']
#示例 #往列表v中添加用户输入元素,只要用户输入q不分大小写,程序结束输出列表 v=[] while True:a=input('请输入:')if a.lower()=='q':breakv.append(a) print(v)
- 列表内指定位置添加元素(修改本身): x.insert(n,'b') #往x列表中添加一个'b'值,在n位置
- 注:列表中的元素位也是从0开始计数的
#示例v=[11,22,33,44,"蒋毅"]a='xxx'v.insert(3,a) #在v列表的第3位添加'xxx'print(v) #输出:[11,22,33,'xxx',44,"蒋毅"]
- 列表中元素反转顺序(修改本身): x.reverse() #x列表中所有元素顺序反转
#示例 v=[11,22,33,44] v.reverse() print(v) #输出:[44, 33, 22, 11]
- 公共功能
- 计算列表长度:len(x)
#示例v = [11,22,33,44,"蒋毅"]a=len(v)print(a) #输出:5
- 索引:列举列表中对应的值 #与字符串相同
- 单个索引:v[0]
- 多个索引:v[0:5]
- 根据步长,索引v[0:5:2]
- for循环:for i in v: #把v列表中的每个元素遍历给i
#示例 v = [11,22,33,44,"蒋毅"] for i in v:print(i) #输出:11 22 ...
- 替换: v[2]='xxx' #把v列表中的第2位元素替换成'xxx' ; v[2:4]=['a','b','c'] #把v列表中的第2位第三位元素替换成'a','b','c'
#示例v = ['张勤学','成大经','成绩','刘龙华'] #v[3] = '吴国胜' #输出: ['张勤学','成大经','成绩','吴国胜']#v[2:4]=['a','b','c'] #输出: ['张勤学','成大经','a','b','c']#v[2]=['a','b','c'] #输出: ['张勤学','成大经',['a','b','c'],'刘龙华']#v[2:3]=['a','b','c'] #输出: ['张勤学','成大经','a','b','c','刘龙华']#v[0:]=[11,22,33] #输出:[11,22,33] #v[2:3]='吴国胜' #输出: ['张勤学','成大经','吴','国','胜','刘龙华']print(v)
- 删除: del v[n] #把v列表中的第n个值删除 ; del v[0:n] #把v列表中的第0个值到第n-1个值删除
#示例v = ['张勤学','成大经','成绩','刘龙华'] del v[3] print(v) #输出:['张勤学','成大经','成绩']
-注:补充
- 列表中可以是:数字,字符串,布尔值,列表,这些元素可以根据自己的类功能或公共功能进行操作
#示例 li = [11,22,[6,"88991",7],33,True,"蒋毅",55] #v=li[2][1][4] #输出:1 #v=li[2][1].replace('1','5') #输出: 88995 #li[1]=33 #输出: print(v)
-元祖 tuple类 : 元祖中的元素不能删除
- 类功能:无
- 公共功能:与列表一样
- 计算元祖长度:len(x)
- 索引元祖元素:x[n] #与列表相同方法
- for循环:#与列表相同方法
- 嵌套:元祖中可以有列表,列表中可以有元祖,元祖中的列表可以进行修改
#示例 #v = (11,22,[11,22,33],33,(9,1,2,"alex"),44) #v[2][1]=333 #输出:(11, 22, [11, 333, 33], 33, (9, 1, 2, 'alex'), 44) #v[2].append(44) #输出:(11, 22, [11, 22, 33, 44], 33, (9, 1, 2, 'alex'), 44)v[2][0:]=['aa','bb'] #输出:(11, 22,['aa','bb'], 33, (9, 1, 2, 'alex'), 44)#print(v)
- 字典 dict类 #用 键值对 储存信息,每个键对应唯一的值,键不可以重复,但值可以重复
- 类功能
- 取值: v.get('n') # 字典v中查看键为'n'的值 #取值功能不会修改字典 #当键不存在时,值为None,不会报错
#示例 v = {"k1":'v1', # 键值对"k2":'v2', # 键值对 } #v1=v.get('k1') #输出:v1#v1=v.get('k3') #输出:None 但不会报错print(v1)
- 公共功能
- 字典长度,即键值对个数: len(x)
#示例 v = {"k1":'v1', # 键值对"k2":'v2', # 键值对 } v1=len(v) print(v1) #输出:2
- 索引:v['k'] #查找字典v中键为'k'的值,若k存在则输出对应的值,若k不存在则报错
#示例 v = {"k1":'v1', # 键值对"k2":'v2', # 键值对 } v1=v['k1'] #输出:v1 v1=v['a'] #输出:报错 print(v1)
- 替换: v['k']=a #把a赋值给字典v中'k'键的值,若'k'键存在则替代它原有值,若'k'不存在则创建一个'k'键并赋给它新值a
#示例 v = {"k1":'v1', # 键值对"k2":'v2', # 键值对 } #v['k2']=v3 #输出: {'k1': 'v1', 'k2': 'v3'} #v['k3']=v3 #输出: {'k1': 'v1', 'k2': 'v2', 'k3': 'v3'} print(v)
- 删除: del v['k'] #把字典v中键为'k'的键值对删除
#示例 v = {"k1":'v1', # 键值对"k2":'v2', # 键值对 } del v['k1'] print(v) #示例
- for循环 :for i in v.keys(): #循环v字典中各键给变量i ; for i in v.values(): #循环字典v中各值给变量i ; for a,b in v.items(): #循环字典v中各键值对给变量a(键),b(值)
#示例 v = {"k1":'v1', # 键值对"k2":'v2', # 键值对 } #for i in v.keys(): # print(i) #输出:k1,k2.... #for i in v.values(): # print(i) #输出:v1,v2.... #for a,b in v.item(): # print(a,b) #输出:k1 v1 k2 v2
转载于:https://www.cnblogs.com/JAYWX/articles/7392081.html
基本数据结构(int,布尔,字符串,列表)相关推荐
- python 常用字符串 列表元祖字典都 自带的函数方法
上节内容回顾和补充编程语言高级低级Python种类JavaPythoncPython *****pypy字节码 和 机器码Python程序:1. 终端:C:\python35\python.exe D ...
- 字符串基本操作 c语言,数据结构C语言字符串的基本操作.doc
数据结构C语言字符串的基本操作 串的基本操作 #include #include #include #define m 100 typedef struct{ char ch[m]; int leng ...
- jdbc和jdbc驱动_JDBC布尔兼容性列表
jdbc和jdbc驱动 有趣的是,布尔类型只是在SQL标准后期才引入,即SQL:1999 . 即使在今天,并非所有数据库本身都支持BOOLEAN或BIT类型. 最重要的是,我们仍然可以在Oracle中 ...
- JDBC布尔兼容性列表
有趣的是,布尔类型只是在SQL标准后期才引入,即SQL:1999 . 即使在今天,并非所有数据库本身都支持BOOLEAN或BIT类型. 最重要的是,我们仍然可以在Oracle中等待一段时间. 这是20 ...
- mysql 逗号金额比较,如何使用MySQL比较两个逗号分隔的字符串列表
我使用了一个名为" containsAll()"的Java方法来检查ArrayLists是否具有共同的内容. 假设我在MySQL表中有一个列表A(一行)和其他几个列表(在" ...
- python字符串排序_Python对字符串列表进行排序
在本教程中,我们将看到如何对字符串列表进行排序.我们将使用sort方法和sorted函数对给定的字符串列表进行排序.然后,我们将了解如何根据不同的条件(例如长度,值等)对字符串列表进行排序, 让我们看 ...
- java字符串转字符串列表_Java中的字符串列表示例
java字符串转字符串列表 We have to read total number string i.e. "n", create a list of the Strings a ...
- Python把嵌套的字符串列表转换为整数列表的两种方法
假设有如下嵌套的字符串列表: testMatrix = [['1', '2', '3'], ['4', '5', '6'], ['7', '8' ...
- c语言数据结构字符串匹配,C语言数据结构之模式匹配字符串定位问题
字符是计算机的单位,字符的值都取决于字符集,匹配字符串需要找有全新的算法,才能提高程序员的工作效率,今天爱站技术频道就为大家带来了C语言数据结构之模式匹配字符串定位问题,大家参考下文学习吧! C语言数 ...
- C++ 数据结构(三)列表(3)有序列表
来源:我的博客站 OceanicKang |<C++ 数据结构(三)列表(3)有序列表> 上一篇:<C++ 数据结构(三)列表(2)无序列表> 唯一化 template < ...
最新文章
- Linux awk内部变量
- python考试pass or fail_python-pytest学习(十二)-标记失败xfail
- python的def函数_Python 学习之 def 函数
- Redis源码编译安装
- 前端初级html\css知识点总结
- 关于asp.net利用mono部署到Linux上的一些说明
- C/C++中位运算操作符的使用
- 【GRE协议】CentOS配置GRE隧道
- 后台模拟页面登陆_模拟炒股软件支付宝同花顺都可以快速体验炒股
- 动手写简单的音乐推荐系统
- Firemonkey使用Android原生控件一些注意事项
- 成都双流计算机大专学校,成都双流有哪些好的职业学校?
- mysql 加号_从数据库中读取字符串时其中的空格变成加号
- 计算机设计大赛 app一等奖,广商学子在大学生计算机设计大赛中喜获一等奖
- 罗懋康教授: 学数学, 要通“心法”
- 遥感方向SCI期刊整理
- 同构图异构图二部图区别
- 【maven本地打包脚本】Git/Svn代码更新+maven打包流水线
- python-opencv截取视频片段
- 申请Google AdSense联盟(还没有通过)
热门文章
- python-threading多线程龟兔赛跑
- 存储解决方案公司招聘
- 安装Linux、windows的vhd系统指南
- zabbix客户端日志报错no active checks on server [192.168.3.108:10051]: host [192.168.3.108] not found
- Java在ACM竞赛中的技巧(蓝桥杯备赛总结)
- 28岁 计算机专硕,28岁我辞掉工作考研!
- 国家统计局一季度经济数据
- Win7下合并U盘分区
- 如何从“设计师必考三大证书”中,正确看待:adobe认证证书含金量?
- 安装Discuz开源论坛