python中的数据类型中int表示_python中的基本数据类型(int,bool,str)及字符串操作

一. 基本数据类型概况

1.  int 整数,主要用来进行数学运算

2.  str 字符串,可以保存少量数据并进行相应的操作

3.  bool 布尔值,判断真假,True,False

4.  list 列表. 一般存放大量的数据, 用 [ ] 表示

5.  tuple 元组. 只读列表, 不能发生改变,用 ( ) 表示.

6.  dict 字典,保存键值对,一样可以保存大量数据 {"name":"哈哈", "age": "18"}

7.  set 集合 内容不能重复, 其实就是不保存value的dict

8.  bytes 一堆字节. 最小数据单元

二. int类型的相关操作.

在python3中所有的整数都是int类型. 但在python2中如果数据量比较大,会使用long类型.在python3中不存在long类型

数字没办法进行其他相关操作,操作只有+ - * /  //   %  ** 这类

8bit = 1 byte

bit_lenth()  来求整数在内存中占用的二进制码长度

三. bool类型的操作. 基本类型转换的问题

bool类型没有操作

类型转换

结论一: 想把xxx转换为y类型 y(xxx)

结论二: 能够表示False的数据: 0 , False,"" , [] , {} , set() , tuple() , None

四. str 认识字符串(重点, 多)

字符:  单一的文字符号,字符按照固定的顺序连成串, 被' 或者" 或者''' 或者"""括起来的内容

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

字符串相关的操作方法:

1.upper() 转换成大写,忽略大小写2.capitalize() 首字母转换成大写3.swapcase() 大小写互相转换4.casefold() 转换成小写, 和lower的区别: lower对某些字符支持不够好, casefold对所有字母都有效,比如东欧的一些字母5.title() 每个被特殊字符隔开的字母首字母大写6 .center(10,"*") 拉长成10, 把原字符串放中间,其余位置补 *

7.expandtabs() 可以改变\t 的长度,默认长度更改为88.strip() 去掉左右两端的空白,空格, \t, \n, 所有用户输入的内容都要去空白9.lstrip() 去掉左边空格10.rstrip() 去掉右边空格11.replace(old,new)把old 替换成new12.split()字符串切割13.startswith() 判断是否以xxx开头14.endswith() 判断是否以xxx结尾15 .find() 查找, 找不到返回-1.index() 也可查找索引 如果查找不到,结果为报错16.isdigit() 判断是否是数字组成17.len() 求长度 用法可视为和print()一样18.endswith() 判断是否以xxx结尾19.count() 查找xxx出现的次数20.isalnum() 判断是否由字母和数字组成21.isalpha() 判断是否由字母组成22.isnumeric() 判断是否由数字组成 可以识别中文23.isupper() 判断是否是大写字母24 .islower() 判断是否是小写字母

25 .join() 拼接字符串

1.切片和索引

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

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

s[start:end:step]

start开始的位置

end 结束

step 步长,控制方向,每xx个取一个

3.格式化输出:

s12 = "我叫%s, 今年年%d岁了了, 我喜欢%s" % ('Bob', 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.查找:

s= "我叫Tom, 我喜欢python, java, c等编程语言."ret1= s.startswith("Tom") #判断是否以Tom开头

print(ret1)

ret2= s13.startswith("我叫Tom") #判断是否以我叫Tom开头

print(ret2)

ret3= s13.endswith("语⾔") #是否以'语言'结尾

print(ret3)

ret4= s13.endswith("语⾔.") #是否以'语⾔.'结尾

print(ret4)

ret7= s13.count("a") #查找"a"出现的次数

print(ret7)

ret5= s13.find("t") #查找't'出现的位置

print(ret5)

ret6= s13.find("tory") #查找'tory'的位置, 如果没有返回-1

print(ret6)

ret7= s13.find("a", 8, 22) #切片找

print(ret7)

ret8= s13.index("t") #求索引位置. 注意. 如果找不到索引. 程序会报错

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()) #这个中文都识别.

print(s15.isdigit())print(s16.isdigit())#练习. ⽤用算法判断某⼀一个字符串是否是小数

s17 = "-123.12"s17= s17.replace("-", "") #替换掉负号

ifs17.isdigit():print("是整数")else:if s17.count(".") == 1 and not s17.startswith(".") and not s17.endswith("."):print("是小数")else:print("不是⼩数")

6 .join() 拼接

li = ["a", "b", "c", "d"]

s= "_".join(li)print(s) #a_b_c_d

li= "abcdef"s= "_".join(li)print(s) #a_b_c_d_e_f

五.for循环遍历字符串

for 变量 in可迭代对象

循环体

举例:

s= "12345"

for c ins:print(c)

用while的话可以这么写

s = "12345"index = 0

while index < len(s):

print(s[index])

index += 1

in有两种用法:

1. 在for中. 是把每⼀一个元素获取到赋值给前面的变量.

2. 不不在for中. 判断xxx是否出现在str中.

#练习, 计算在字符串"I am sylar, I'm 14 years old, I have 2 dogs!"中数字的个数

s20 = "I am sylar, I'm 14 years old, I have 2 dogs!"count=0for c ins20:ifc.isdigit():

count= count + 1

print(count)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值