当前位置: 首页 > news >正文

python数据格式_python数据类型

数据类型

int数字类型:

bit_length():

计算数字二进制位数

i = 2

print(i.bit_length()) 值为2 二进制00000010

i= 5

print(i.bit_length()) 值为3 二进制00000101

bool布尔值:

int ----->bool

只要是0 ----》False  非0就是True

i = 3b=bool(i)print(b)

bool----> int

True 1False 0

i=int(True)print(i) 值为1

ps:

while True:

pass

while 1: 效率高

pass

str --->bool

s = "" ----->False

非空字符串都是True

s= "0" -----> True

s

if s:

print('你输入的为空,请重新输入')

else:

pass

字符串

索引与切片

对字符串的任何操作都会形成一个新的字符串,跟以前的没关系

s = 'ABCDLSESRF'

#索引

s1 =s[0]print(s1)

A

s2= s[2]print(s2)

C

s3= s[-1]print(s3)

F

s4= s[-2]print(s4)

R

切片 :

顾头不顾尾,尾需要加1

s = 'ABCDLSESRF's5= s[0:4]print(s5)

#ABCD

s6= s[0:-1]print(s6)

#ABCDLSESR

s7= s[:] #s7和s8效果一样,取完后边什么都不写

s8 =s[0:]print(s7,s8)

#ABCDLSESRF ABCDLSESRF

s9=s[0:0]

#空

步长:

s = 'ABCDLSESRF' #s[首:尾:步长]

s10 = s[0:5:2] #隔两个取一次

print(s10)

#ACL

s11= s[4:0:-1]print(s11)

#LDCB

s12= s[3::-1]print(s12)

#DCBA

s13= s[3::-2]print(s13)

#DB

倒着取

s = 'ABCDLSESRF's13= s[-5:-1] #表示从-5到-1的截取显示print(s13)

#SESR

s14= s[-1::-1] #表示以-1开头,一直到开始结束,每次以-1的形式显示print(s14)

#FRSESLDCBA

s15= s[::-1] #表示全部截取,以-1的形式显示,每次显示-1个print(s15)

#FRSESLDCBA

字符串的操作

大小写系列

大小写对数字没有影响

capuitalize()

# 字符串第一个字母大写

s = 'arthur's1=s.capitalize()print(s1)

#Arthur

title()

#每个隔开(非字母)的单词首字母大写

s = 'my +na7me,is*authur'

print(s.title())

#My +Na7Me,Is*Authur

upper()

全大写

s = 'my name is Authur 7 周日'

print(s.upper())

#MY NAME IS AUTHUR 7 周日 #字母和中文是不受影响的

lower()

全小写

s = 'MY NAME IS AUTHUR 7 周日'

print(s.lower())

#my nameis authur 7 周日

使用例子

输入验证码时,不分大小写

s_str= 'acEQ1'you_input=input('请输入验证码,不区分大小写:')if s_str.upper() ==you_input.upper():print('输入成功')else:print('请重新输入')

swapcase()

大小写翻转

s = 'mY nAme iS aUTHUR'

print(s.swapcase())

#My NaME Is Authur

填充

center()

居中,默认填充空格,可指定填充符号

s = 'Authur'

print(s.center(20,'+')) #~号是填充位,不填默认是空格,20位左右表示左右加起来填充20位

#+++++++Authur+++++++

expandtabs()

加\t,如果字符串中有\t,字符串前的字符不足八位,补齐八位,如果前面的字符串满足八位,再补八位

s = 'authur\tsir'

print(s.expandtabs()) #结果为authur sir #所以意味着\t补了三位

s = 'authuris\tsir'

print(s.expandtabs()) #结果为authuris sir #所以意味着\t补了八位,因为前面的字符串已经满足八位

查找判断类

len()

测试字符串的长度,公共方法,字符串可以用,列表和元祖也可以用

s = 'authur'

print(len(s))#6

startswith()

以什么开头,可切片

s = 'authur'

print(s.startswith('aut',0,5))   #默认开始和结尾不写是判断全部

#True

endswith()

以什么结尾,可切片

s = 'Authur'

print(s.endswith('t',0,3)) #默认什么都不写是判断全部,判断选定范围内的尾部是否为指定字符串结尾

#True

find()

通过元素找索引,找不到返回-1,区分大小写,找单词时按照第一个单词的索引位置返回数字,可切片,默认全部查找

s = 'authur'

print(s.find('t',0,4))

#2

index()

通过元素找索引,和find使用方法相同,但是找不到报错

删除指定符号

strip

默认删除前后空格,可以添加填充符,例如特殊符号或字母等,也可以添加多个

s = '* 7authur #'

print(s.strip('* 7#'))

#authur

使用例子

username = input('请输入名字:').strip().lower()if username =='authur':

info='''****************************

**welcome {}'s cnblogs**

****************************'''.format('authur')print(info)

rstrip

默认删除右边空格,使用方法和strip一样

lstrip

默认删除左边空格,使用方法和strip一样

count()

统计指定字符的出现次数,可以切片

s = 'authur'

print(s.count('u',0,3))

#1

转换

split()

字符串转换为列表

将字符串按照规定拆分为列表,默认不输入内容为空格,选定以什么字符或者符号分割,则选定的会消失

s = 'Arthur:this:my:name'l= s.split(':')print(l)

#['Arthur', 'this', 'my', 'name']

格式化输出

format()

format的三种玩法 格式化输出

s= '我叫{},今年{},爱好{},再说一下我叫{}'.format('authur',18,'python','authur')print(s)

name= input('请输入名字:')

s= '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format(name,18,'python')print(s)

name= input('请输入名字:')

s= '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(age=18,name=name,hobby='python')print(s)

替换

replace()

s = 'my name is xiyangyang and xiyangyang'

print(s.replace('xiyangyang','authur',1))

#my name is authur and xiyangyang

is系列

返回值为True和False

#字符串由字母或数字组成

print(name.isalnum())#字符串只由字母组成

print(name.isalpha())#字符串只由数字组成

print(name.isdigit())

相关文章:

  • 下载mysql然后怎么安装_mysql 下载与安装
  • java 方法前加同步_Java同步的三种实现方式详解
  • mysql 事务的作用_使用Mysql事务的优点
  • java和android架构公众号_Android仿微信公众号界面
  • 连连看的连线怎么写java_求助 这个连连看的方法地方该怎么写
  • php java字节流_php中stream(流)的用法
  • java自动雨刷系统_【图文】汽车自动雨刷的使用指南
  • php 多线程处理_PHP CURL 多线程操作代码实例
  • php定义函数打印表格内容,php 自定义函数实现将数据 以excel 表格形式导出示例...
  • nodejs与php混合,php与nodejs的加密数据互通
  • php参数特殊字符,PHP中URL中特殊字符引起的问题(+,=) 分析及解决方法
  • php 鼠标点击其他区域下拉框隐藏,jQuery除指定区域外点击任何地方隐藏DIV功能...
  • java 日期转换星期,关于JAVA的小工具(日期转周几)
  • PHP的经典程序,几款经典php分页程序(1/4)
  • java gzip加解秘,vue 基于pako.js实现gzip的压缩和解压功能
  • AzureCon上微软宣布了哪些容器相关的重磅消息
  • chrome扩展demo1-小时钟
  • docker-consul
  • Essential Studio for ASP.NET Web Forms 2017 v2,新增自定义树形网格工具栏
  • IOS评论框不贴底(ios12新bug)
  • Java程序员幽默爆笑锦集
  • Laravel Telescope:优雅的应用调试工具
  • MySQL常见的两种存储引擎:MyISAM与InnoDB的爱恨情仇
  • Python语法速览与机器学习开发环境搭建
  • Spring技术内幕笔记(2):Spring MVC 与 Web
  • Stream流与Lambda表达式(三) 静态工厂类Collectors
  • Traffic-Sign Detection and Classification in the Wild 论文笔记
  • Vultr 教程目录
  • 给新手的新浪微博 SDK 集成教程【一】
  • 互联网大裁员:Java程序员失工作,焉知不能进ali?
  • 悄悄地说一个bug
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 容器服务kubernetes弹性伸缩高级用法
  • 携程小程序初体验
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • Hibernate主键生成策略及选择
  • zabbix3.2监控linux磁盘IO
  • 关于Kubernetes Dashboard漏洞CVE-2018-18264的修复公告
  • ​flutter 代码混淆
  • #基础#使用Jupyter进行Notebook的转换 .ipynb文件导出为.md文件
  • %check_box% in rails :coditions={:has_many , :through}
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第2节(共同的基类)
  • (Git) gitignore基础使用
  • (MATLAB)第五章-矩阵运算
  • (Oracle)SQL优化基础(三):看懂执行计划顺序
  • (二)丶RabbitMQ的六大核心
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (附源码)springboot美食分享系统 毕业设计 612231
  • (四)汇编语言——简单程序
  • (已解决)什么是vue导航守卫
  • (转载)虚函数剖析
  • ***linux下安装xampp,XAMPP目录结构(阿里云安装xampp)
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .NET 发展历程
  • .NetCore部署微服务(二)