int, bool, string的操作
基本数据类型
1.int型
可以求整数的二进制长度.输入一个数字a,"a.bit_length()"语法求a的二进制长度.
a = 3 #二进制为11
print(a.bit_length())#结果为2
2.bool型
bool型的取值只有True和False两种结果.可以语str型,int型转换.用括号把要转换的给括起来,例如,int型转bool型: bool(int). 记住带空(None也是空)的都是False,不带空的都是True.
a = 0
b = bool(a)#0是False,非0是True
print(b)#False
3.str型
字符串有很多操作,例如索引,切片,格式化输出,查找,条件判断等
(1) 索引
索引就是字符串的下标,下标是从0开始,例如"qwertyu"长度为7,但是它的索引范围是从0到6.索引操作如图:
s = "qwertyuiop"
print(s[0])#结果为q
print(s[1])#结果为w
print(s[2])#结果为e
print(s[3])#结果为r
print(s[4])#结果为t
......
(2) 切片
用字符串的下标来截取部分字符串内容.语法:str[start:end],str是字符串,start是下标开始的位置,end是下标结束的位置.start为空表示从头开始切,end为空表示切到尾.注意切片是顾头不顾尾,只能截取到end的前一个位置.
s = "这是一个很长的字符串"
s1 = s[2:6]#下标从2到6截取,但不包括下标为6的字符
print(s1)#一个很长
也可以反方向截取(从右往左),下标开始值为-1.
s = "这是一个很长的字符串"
s1 = s[-6:]#从下标-6截取到尾
print(s1)#很长的字符串
也能执行跳着截取操作语法:str[start:end:步数],步数就是每隔几个取一个
s = "这是一个很长的字符串"
s1 = s[ ::2]#从头到尾,每隔两个截取一个
print(s1)#这一很的符
总结一下切片不同的截取方式
a = "qwertyuiop"
print(a[2:6]) #erty
print(a[2:6:-1])#从2到6(从左到右)什么都没有,因为是从右到左获取的
print(a[-2:-6:1])#从-2到-6(从右到左)什么都没有,因为是从左到右获取的
print(a[-2:-6:-1])#oiuy
print(a[-6:-2:1])#tyui
print(a[-6:-2:-1])#无结果
print(a[-1:1])#从-1到1(从右往左)什么都没有,因为默认是从左到右获取
print(a[-1:1:-1])#poiuytre
print(a[1:-1:-1])#无结果
print(a[1:-1:1])#wertyuio
print(a[:-1:-1])#无结果
print(a[:-1:1])#qwertyuio
print(a[-1::1])#p
print(a[-1::-1])#poiuytrewq#从-1到结尾,这里的结尾就是从左到右的开始端"q"
print(a[::-1])#poiuytrewq
4.字符串的相关操作方法.
切记,字符串是不可改变的对象,任何操作对字符串不会有任何影响.
(1) 大小写转换
1) 首字母大写
语法: s2 = s1.Capitalize() ,注意转换时要把值赋给另一个变量,print(s2)才是我们转换的值,print(s1)的结果还是原来的字符串
s = "qweRTyuiop"
s1 = s.capitalize() # 首字母大写
print(s) # 原字符串不变还是 qweRTyuiop
print(s1) #Qwertyuiop 原字符串中大写的字母变成小写,只有首字母变成大写
2) 全部转换成大(小)写
语法:大写:s1 = s.upper(). 小写:s2 = s.lower()
s = "qweRTyuiop"
print(s.upper()) #QWERTYUIOP
print(s.lower()) #qwertyuiop
3) 大小写互换
语法:s1 = s.swapcase()
s = "qweRTyuiop"
print(s.swapcaser()) #QWErtYUIOP
(2) 切来切去
1) 居中
语法: s.center().让输出的内容居中.
s = "周杰伦"
print(s.center(5, "*")) # *周杰伦*
2)去空格
语法:s.strip().
s = " qweR Tyu iop "
print(s.strip()) #qweRTyuiop
3) 字符串替换
语法:s.replace()
s = "qweRTyuiop"
print(s.replace("q","a"))#aweRTyuiop
4)字符串切割
语法: s.split(),切割后的字符串成了列表.
s = "qwe,RTy,uio,p"
print(s.split(",")) #['qwe', 'RTy', 'uio', 'p']
(3). 格式化输出
之前是用%s和%d来代替变量的值,{} .format() 也有同样的作用,而且{}里可以指定变量.
sername = input("请输入名字:")
place = input("请输入地点:")
hobby = input("请输入爱好:")
print("敬爱可亲的{},最喜欢在{}地方干{}".format(username,place,hobby))
(4) 查找
1) s.startswith(), s.endswith()
startswith()是判断以什么开始,endswith是判断以什么结束.
2) s.count(),查找某字符串出现的次数.
3) s.find(),查找字符串出现的位置,没有会返回-1
4)s.index(),功能和find一样,没有会报错
s = "今天吃饭了吗?没吃"
print(s.startswith("今")) # True,判断字符串是否以今开头
print(s.endswith("没")) # False,判断字符串是否以吃结尾
print(s.count("吃")) # 2次,计算吃在字符串中出现的次数
print(s.find("天" )) #1,计算天在原字符串中出现的位置, 如果没出现返回 -1
print(s.index("没")) #7,计算没在字符串的位置
(5) 条件判断
1)是否由字母数字组成: s.isalnum()
2)是否由字母组成:s. isalpha()
3)是否由数字组成: s.isdigit()
4)是否是大写字母: s.isupper()
5)是否是小写字母: s.islower()
s = "abc123"
print(s.isdigit()) # False 判断字符串是否由数字组成
print(s.isalpha()) # False 是否由字母组成
print(s.isalnum()) # True是否由字母和数字组成
print(s.isupper()) # False 是否由大写字母组成
print(s.islower()) # True 是否由小写字母组成
(6) 计算字符串的长度
len()用来计算字符串的长度,len()是内置函数,不用在前面加点.len()函数执行的时候实际就是__len__()
s = "hello,world!"
print(len(s)) # print(s.__len__()) #
(7) 迭代
语法: for 变量 in 可迭代对象 将对象里的每个字符都赋给变量
循环体
else
s = ""
for c in s: # 把s中的每一个字符交给前面的c 循环
print(c)
#
#
#
int, bool, string的操作的更多相关文章
- 速战速决 (2) - PHP: 数据类型 bool, int, float, string, object, array
[源码下载] 速战速决 (2) - PHP: 数据类型 bool, int, float, string, object, array 作者:webabcd 介绍速战速决 之 PHP 数据类型 boo ...
- python中的基本数据类型(int,bool,str)及字符串操作
一. 基本数据类型概况 1. int 整数,主要用来进行数学运算 2. str 字符串,可以保存少量数据并进行相应的操作 3. bool 布尔值,判断真假,True,False 4. list ...
- java 常用操作(保留小数位数、int转string,string转int)
1.保留2位小数 //similarityTemp为double类型,需要保留2位有效数据,利用String.format String strTemp=String.format("%.2 ...
- Python学习笔记5-字符串、bool、数值操作和数组字典排序
1.字符串 # 字符串数字之间转换 # x = int("6") # print type(x) #<type 'str'> # y = str(6) # print ...
- c++中几种常见的类型转换。int与string的转换,float与string的转换以及string和long类型之间的相互转换。to_string函数的实现和应用。
1.string转换为int a.采用标准库中atoi函数,对于float和龙类型也都有相应的标准库函数,比如浮点型atof(),long型atol(). 他的主要功能是将一个字符串转化为一个数字,在 ...
- 对string 的操作
相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...
- C++ int与string的相互转换(含源码实现)
一.int转换成string Ⅰ.to_string函数 c++11标准增加了全局函数std::to_string: string to_string (int val); string to_str ...
- luogu题解P1032字串变换--BFS+STL:string骚操作
题目链接 https://www.luogu.org/problemnew/show/P1032 分析 这题本来很裸的一个BFS,发现其中的字符串操作好烦啊.然后就翻大佬题解发现用STL中的strin ...
- Python的基础类型(int,bool,str):
Python的基础类型(int,bool,str): 1.int -------> 整形:主要用力进行数字计算 2.string ------>字符串:可以保存少量数据并进行相关的操作 3 ...
随机推荐
- mysql中不直接通过密码连接 还要指定ip地址进行连接----------DCL数据库控制语言
线上如果用root超级用户连接数据库,非常容易造成隐私泄漏.一般线上不用root数据控制. 今天和大家分享的是 输入密码还不可以连接数据库,必须要输入ip地址以后,才可以连接. 正常的访问数据库都是 ...
- LG3975 [TJOI2015]弦论
题意 题目描述 为了提高智商,ZJY开始学习弦论.这一天,她在< String theory>中看到了这样一道问题:对于一个给定的长度为n的字符串,求出它的第k小子串是什么.你能帮帮她吗? ...
- Nginx学习安装配置和Ftp配置安装
什么是代理? 什么是正向代理? 什么是反向代理? Nginx与负载均衡有什么联系? 如何在centos7 中安装Nginx-------------安装配置---------------------- ...
- oracle完全恢复数据库
完全恢复数据文件 rman target/ list backup summary; 查看是否有备份,如果没有备份,先进行全备份(应该是backup database吧) 现在模拟删除oracle数据 ...
- nginx配置基于域名的虚拟主机
其实基于域名和基于ip的虚拟主机配置是差不多的,在配置基于ip的虚拟主机上我们只需要修改几个地方就能变成基于域名的虚拟主机,一个是要修改域名,一个是host文件直接看代码 [root@localhos ...
- day 57 jQuery的补充
.data() 在匹配的元素集合中的所有元素上存储任意相关数据或返回匹配的元素集合中的第一个元素的给定名称的数据存储的值. .data(key, value): 描述:在匹配的元素上存储任意相关数据. ...
- Understanding Complex Event Processing (CEP)/ Streaming SQL Operators with WSO2 CEP (Siddhi)
转自:https://iwringer.wordpress.com/2013/08/07/understanding-complex-event-processing-cep-operators-wi ...
- 如何优化JavaScript的构造函数
首先看一个构造函数User,我们在调用User创建一个实例的的时候,一般都是要写上new操作符的.在这里说明一下,如果使用new关键字调用构造函数,那么构造函数里面的this总是是指向一个全新的对象( ...
- Oracle11g 密码延迟认证导致library cache lock的情况分析
在 Oracle 11g 中,为了提升安全性,Oracle 引入了『密码延迟验证』的新特性.这个特性的作用是,如果用户输入了错误的密码尝试登录,那么随着登录错误次数的增加,每次登录前验证的时间也会增加 ...
- 事务 — Redis 设计与实现
非事务状态下的命令以单个命令为单位执行,前一个命令和后一个命令的客户端不一定是同一个: 事务状态则是以一个事务为单位,执行事务队列中的所有命令:除非当前事务执行完毕,否则服务器不会中断事务,也不会执行 ...