Python的基础类型(int,bool,str):

1.int -------> 整形:主要用力进行数字计算

2.string ------>字符串:可以保存少量数据并进行相关的操作

3.bool-------->布尔型:判断真假 true(真),false(假)

4.list--------->列表:存储大量数据,用[]来表示

5.tuple------->元组:不可以改变,用()表示

6.dict---------->字典:保存键值对,一样保存大量数据

7.ste----------->集合:保存大量数据不可以重复,也就是不保存value的dict

整数(int)

在Python中整数都是int型,但是在python2中如果数据量比较大.会使用long类型,在python3中不存在long类型,整数可以进行的操作

      bit_length().计算整数在内存中占用的二进制长度

布尔值(bool):

取值只有ture和false,bool没有操作

转换问题:

str--------> int(str)       str字符串类转换成数字类型

int-------->str(int)        int数字类型转换成字符串类型

int--------->boot(int)    int转换成布尔型,0是false,非0是true

bool------>int(bool)     bool转换为数字类,true是1,fase是0,只存在1和0

str--------->bool(str)   空字符串是false,不空是true

bool------->str(bool)   把bool转成相应的值

元祖------->list(tuple) 把元祖转换成列表

列表------->tuple(list) 把列表转换成元祖

list------->str.join(list) 把列表转换成字符串

str-------> str.split()   把字符串切割为列表

转换成False的数据: 0,'',None,[],(),{},set() ==> False

字符串(str):

把字符连接到一起称作字符串:字符串是可以先加的:(字符串+字符串),在python中',",''',"""引起来的内容成为字符串

4.1:切片和索引

 1.索引,索引就是下标记,切记,下标从0开始

#
name = "python最牛逼"
print (name[0]) #获取p
print (name[1]) #获取y
print (name[2]) #获取t
print (name[3]) #获取h
print (name[4]) #获取o
print (name[5]) #获取n
print (name[6]) #获取最
print (name[7]) #获取牛
print (name[8]) #获取逼
print (name[9]) #没有9,越界了会报错
print(name[9])
IndexError: string index out of range #索引错误:字符串索引超出范围
print(name[-1]) #表示倒数第一个
print(name[-2]) #表示倒数第二个

 2.切片,我们可以使用下标来截取部分字符串内容

  语法:str[start:end]

  规则:顾头不顾尾,从start(开始)去截取,截取到end,最后一个则不截取

name =python最牛逼
print(name[0:3]) #从0获取到3,不包括3 结果:pyt
print(name[6:8]) #从6获取到8,不包含8 结果:最牛
print(name[6:9]) #最大是8,根据顾头不顾尾,想取到8必须给9 结果:最牛逼
print(name[6:10]) #如果右边已经过了最大值,相当于取值到最后,切片超值不报错
print(name[4:]) #从第4位取值到最后
print(name[-1:-5])   #从-1到-5是获取不到结果的,因为从-1向右数,是数不到-5的
print(name[-5:-1]) #从倒数第5个向右数,数到倒数第一个,结果on最牛
print(name[-5:]) #从倒数第5个向右数,数到最后包括最后一位,结果:on最牛逼
print(name[-1:]) #这个是取到最后一个,结果:逼
print(name[:]) #原样输出

  跳着截取

#跳着取:步长
name = "python最牛逼"
print(name[1:5:2]) #从第一个开始取,取到第五个,每两个取一个 结果: yh, 分析: 1:5=> ytho => yh
print(name[:5:2]) #从头开始到第五个. 每两个取一个
print(name[4::2]) #从4开始取,取到最后,每两个取一个
print(name[-5::2]) #从倒数第五个开始取到最后,每两个值娶一个
print(name[-1:-5]) #-1到-5没有值,因为是从左往右取的
print(name[-1:-5:-1]) #步长是-1,这时候就是从右往左取值
print(name[-5::-3]) #从倒数第五个开始,到最开始,没3个值娶一个

     步长:如果是整数,则从左往右,如果是负数从右往左数,默认是1

  切片语法:str[start:end:step]  start开始 end结束 step步长

4.2字符串的相关方法,字符串是不可变的对象,所以任何操作对原字符串是不会有影响的

  1.大小写转来转去

name = "i am a newbest"
#capitalize
print (name.capitalize()) #首字母大写,如果当前首字母为大写那么执行这个就变成小写
#lower
print (name.lower()) #全部转换为小写
#upper
print(name.upper()) #全部转换为大写
#swapcase
print(name.swapcase()) #大小写互相转换
#casefold
print (name.casefold()) # 转换成小写, 和lower的区别: lower()对某些字符支持不够好. casefold()对所有字母都有效. 比如东欧的一些字母
#title
print(name.title()) #每个被特殊字符隔开的首字母大写,中文也算是特殊字符 #应用,身份验证输入验证码是否正确
time = "zDxY"
user1 = input("请输入验证码")
if time.upper() == name.upper():
print("验证成功")
else:
print("验证失败")
name = "python最牛逼"
name.startswith() #大写转换小写,小写转换大写
name.title() #每个被特殊字符隔开的英文字母大写,中文也算是特殊符号

2.字符串切过来切过去

#字符串是不可改变对象,所有操作都是产生新的字符串返回,如
name = "xiao_liu_源"
name.replace("xaio","liu")
print (name) #结果xiao_liu_源,你会发现并没有改变 print (name.replace("xaio","liu")) #结果liu_liu_源 n1 = name.replace("xaio","liu")
print (n1) #结果liu_liu_源
###############################################
s5 = "周杰伦"
name = s5.center(10,"*") #居中
print (name) #结果:***周杰伦****
#除去空格
s7 = " xiao yao name "
print(s7.strip()) #除去两边的空格
print(s7.lstrip()) #除去左边的空格
print(s7.rstrip()) #出去右边的空格
#模拟用户登录,忽略用户输入空格
user = input("请输入您的账户":)
password = input("请输入您的密码")
if user == alix and password == "":
print("登陆成功")
else:
print("登陆失败") name = "111sdjshfkjsdh111"
print (name.strip("")) #除去两边的111,可以指定元素 #字符替换
name = "xiao_dshk_jfhs_oming_dsjkfhsk_j"
print (name.replace("xiao","liu")) #把xiao替换成liu
print (name.replace("o","a",2)) #把两个o替换成a,name = "xiaa_dshk_jfhs_aming_dsjkfhsk_j" # 字符串切割
s9 = "alex,wusir,sylar,taibai,eggon"
lst = s9.split(",") # 字符串切割, 根据,进行切割
print(lst) s10 = """诗人
学者
感叹号
渣渣"""
print(s10.split("\n")) # 用\n切割,结果['诗人', '学者', '感叹号', '渣渣'] # 坑
s11 = "银王哈哈银王呵呵银王吼吼银王"
lst = s11.split("银王") # ['', '哈哈', '呵呵', '吼吼', ''] 如果切割符在左右两端. 那么一定会出现空字符串.深坑请留意
print(lst)

  3.格式化输出:

# 格式化输出
s12 = "我叫%s, 今年%d岁了, 我喜欢%s" % ('sylar', 18, '周杰伦') # 之前的写法
print(s12)
s12 = "我叫{}, 今年{}岁了, 我喜欢{}".format("周杰伦", 28, "周润发") # 按位置格式化
print(s12)
s12 = "我叫{0}, 今年{2}岁了, 我喜欢{1}".format("周杰伦", "周润发", 28) # 指定位置
print(s12)
s12 = "我叫{name}, 今年{age}岁了, 我喜欢{singer}".format(name="周杰伦", singer="周润发", age=28) # 指定关键字
print(s12)

  4.查找

s13 = "我叫sylar, 我喜欢python, java, c等编程语言."
ret1 = s13.startswith("sylar") # 判断是否以sylar开头
print(ret1)
ret2 = s13.startswith("我叫sylar") # 判断是否以我叫sylar开头
print(ret2)
ret3 = s13.endswith("语言") # 是否以'语言'结尾
print(ret3)
ret4 = s13.endswith("语言.") # 是否以'语言.'结尾
print(ret4)
ret7 = s13.count("a") # 查找"a"出现的次数
print(ret7)
ret5 = s13.find("sylar") # 查找'sylar'出现的位置
print(ret5)
ret6 = s13.find("tory") # 查找'tory'的位置, 如果没有返回-1
print(ret6)
ret7 = s13.find("a", 8, 22) # 切片找
print(ret7)
ret8 = s13.index("sylar") # 求索引位置. 注意. 如果找不到索引. 程序会报错
print(ret8)

  5.条件判断

# 条件判断
s14 = "123.16"
s15 = "abc"
s16 = "_abc!@"
# 是否由字母和数字组成
print(s14.isalnum())
print(s15.isalnum())
print(s16.isalnum())
# 是否由字母组成
print(s14.isalpha())
print(s15.isalpha())
print(s16.isalpha())
# 是否由数字组成, 不包括小数点
print(s14.isdigit())
print(s14.isdecimal())
print(s14.isnumeric()) # 这个比较牛B. 中文都识别.比如一,二,壹,
print(s15.isdigit())
print(s16.isdigit())
# 练习. 用算法判断某一个字符串是否是小数
s17 = "-123.12"
s17 = s17.replace("-", "") # 替换掉负号
if s17.isdigit():
print("是整数")
else:
if s17.count(".") == 1 and not s17.startswith(".") and not s17.endswith("."):
print("是小数")
else:
print("不是小数")

  6.计算机长度

name = "我是你的眼, 我也是a"
yuan = len(name) # 计算字符串的长度
print(ret) #结果 9
注意len是Python的内置函数,所以访问方式也不一样.只需记住len和print一样即可

  7.迭代

    我们可以使用for循环来便利(获取)字符串中的每一个字符

    语法:

      for 变量 in 可迭代对象

name= "大家好, 我是VUE, 前端的小朋友们. 你们好么?"
index = 0
while index < len(s19):
print(s19[index]) # 利用索引切片来完成字符的查找
index = index + 1
# for循环, 把s19中的每一个字符拿出来赋值给前面的c
name = "大家好, 我是VUE, 前端的小朋友们. 你们好么?"
for c in name:
print(c) #in有两种方法:
1.在for中,是把每一位元素获取到赋值给前面的变量
2.不在for中.判断xxxx是否出现在str中
print('VUE' in name)
#练习,计算机在字符串"I am sylar, I'm 14 years old, I have 2 dogs!"
xiao = "I am sylar, I'm 14 years old, I have 2 dogs!"
count = 0
for c in xiao:
if c.isdigit():
count = count+1
print(count)

  字符串的转换:

li = ["李嘉诚", "麻花藤", "郭海峰", "刘嘉玲"]
s = "_".join(li)
print(s) #结果 :李嘉诚_马化腾_郭海峰_刘嘉玲
li = "黄花大闺女"
s = "_".join(li)
print(s) #结果:黄_花_大_贵_女

Python的基础类型(int,bool,str):的更多相关文章

  1. Python——字符转换(int , bool ,str)

    while True: pass while 1: pass #效果相同,后者 效果更快 s = 1 y = bool (s) #结果为True,int只要不是0,就为真 s = 'abc' y = ...

  2. day3------基本数据类型int, bool, str,list,tuple,dict

    基本数据类型(int, bool, str,list,tuple,dict) 一.python基本数据类型 1. int  整数. 主要用来进行数学运算 2. str  字符串, 可以保存少量数据并进 ...

  3. 基本数据类型int,bool,str

    .基本数据类型(int,bool,str) 基本数据数据类型: int 整数 str 字符串. 一般不存放大量的数据 bool 布尔值. 用来判断. True, False list 列表.用来存放大 ...

  4. 三.int , bool , str

     03.万恶之源-基本数据类型(int, bool, str) 本节主要内容: 1. python基本数据类型回顾 2. int----数字类型3. bool---布尔类型4. str--- 字符串类 ...

  5. 关于int,bool,str

    今日主要内容 基本数据类型(int,bool,str) 1.基本数据数据类型: int 整数 str 字符串. 一般不存放大量的数据 bool 布尔值. 用来判断. True, False list ...

  6. python基础知识梳理----3基本数据类型,int,bool,str ,for 循环,迭代

    一:python的基本类型 1.int  -----整数,主要进行数学运算 2.str  -----字符串,可以保存少量数据,并进行相关操作, 3. bool ---布尔类型,判断真假 4.list ...

  7. python基础(int,str,bool,list)

    1数字int. 数字主要是用于计算用的,使用方法并不是很多,就记住一种就可以:      bit_length() #bit_length() 当十进制用二进制表示时,最少使用的位数 v = 11 1 ...

  8. 第三天-基本数据类型 int bool str

    # python基础数据类型 # 1. int 整数 # 2.str 字符串.不会用字符串保存大量的数据 # 3.bool 布尔值. True, False # 4.list 列表(重点) 存放大量的 ...

  9. day 03 int bool str (索引,切片) for 循环

    基础数类型总览 10203 123 3340 int +- * / 等等 '今天吃了没?' str 存储少量的数据,+ *int 切片, 其他操作方法 True False bool 判断真假 [12 ...

随机推荐

  1. python 子类继承父类__init__(转载)

    转载: http://www.jb51.net/article/100195.htm 前言 使用Python写过面向对象的代码的同学,可能对 __init__ 方法已经非常熟悉了,__init__方法 ...

  2. python基础学习 day 1

    初学python,记录下自己的历程~ 了解了一下python的基本概念,现在使用的比较多的就是python2.7 学习了if语句和两个经典的循环语句 #关于if语句的应用 name = raw_inp ...

  3. Linux学习之旅(二)Linux文档操作

    目录操作 1. 创建目录 // 目录可以是绝对路径,也可以是相对路径 mkdir 目录名 //创建一个目录 mkdir -p 目录名1/目录名1/... //一次性创建多级目录 2. 删除目录 // ...

  4. [IOI1998]Polygon(区间dp)

    [IOI1998]Polygon 题意翻译 多边形是一个玩家在一个有n个顶点的多边形上的游戏,如图所示,其中n=4.每个顶点用整数标记,每个边用符号+(加)或符号*(乘积)标记. 第一步,删除其中一条 ...

  5. 【LeetCode】智商题 brainteaser(共3题)

    [292]Nim Game [319]Bulb Switcher [777]Swap Adjacent in LR String (2019年2月13日,谷歌tag) 给了两个字符串start 和en ...

  6. Excel,此文件中的某些文本格式可能已经更改,因为它已经超出最多允许的字体数。

    既然是超出最多允许的字体数,那么就不要循环创建IFont.先创建一个IFont font=wk.CreateFont();后面都使用它即可.

  7. 富文本框编辑器实现:a、支持图片复制粘贴;b、支持word复制粘贴图文。

    Chrome+IE默认支持粘贴剪切板中的图片,但是我要发布的文章存在word里面,图片多达数十张,我总不能一张一张复制吧?Chrome高版本提供了可以将单张图片转换在BASE64字符串的功能.但是无法 ...

  8. AT2070 Card Game for Three(组合数学)

    传送门 解题思路 前面的思路还是很好想的,就是要枚举最后一个\(a\)在哪出现算贡献,之后我先想的容斥,结果彻底偏了..后来调了很久发现自己傻逼了,似乎不能容斥,终于走上正轨23333.首先可以写出一 ...

  9. HTML 3-列表、表单、语义化

    有序列表.无序列表.自定义列表在语义上的区别 1.有序列表ol>li:列表有顺序编号(默认列表前加1.,2.,3.,...编号),适用于有逻辑顺序的排列项目,而且次序不能乱.2.无序列表ul&g ...

  10. webform将一个usercontrol作为模态框在page上弹出

    弹窗 public static void RegisterJQueryDialogScript(Page page, string dialogDivId, string title, int wi ...