python的内置数据类型

一.基本数据类型

 1.四种基本数据类型

整型
布尔(bool)
浮点
字符串
数字可进行,加减乘除,求余,浮点数除(结果为浮点数 / ),整数除(结果为整数 //不会四舍五入 ),幂*
a = 7/2                结果:3.5
b = 7//2               结果:3
c = 7%2                 #1
e = 7%4                 #3
d = 2**3                  #8
#a = 3/0               #报错:ZeroDivisionError: division by zero
f=3**2
# divmod以元组方式返回商和余数
g=divmod(13,3)
print(a,b,c,d,e,f,g)

数据类型转换


0b或0B,二进制 0 1
0o或0O,八进制 0 1 2 3 4 5 6 7
0x或0X,十六进制0 1 2 3 4 5 6 7 8 9 a b c d e f
类型转换
    浮点数直接舍去小数部分。
     int(9.9)            结果是:9
    布尔值True转为1,False转为0。 
    int(True)             结果是1
    字符串符合整数格式(浮点数格式不行)则直接转成对应整数,否则报错
a=7.2
print(int(a))
b=True
print(int(b))
c="10"
print(int(c))
# 字符型数据只有整型才可以转换为整型
# 整数和浮点数混合运算时,表达式结果自动转型成浮点数

2.浮点数

浮点数用科学计数法表示。3.14,表示成:314E-2或者314e-2

类型转换 类似于int(),我们也可以使用float()将其他类型转化成浮点数。

整数和浮点数混合运算时,表达式结果自动转型成浮点数。

round(value)可以返回四舍五入的值。但不会改变原有值,而是产生新的值 “+=”中间不能加空格! 结合的是右侧整个表达式: y *= x+2 # 相当于:y = y*(x+2) ''' a=3.14 b=314E-2 c=9.5 d=round(c) x=1 e *= x+2 #相当于 e=e*(x+2)

3.bool

在Python语言中有一些特殊的布尔类型值为False,False、0、0.0、空值None、
空序列对象(空列表、空元祖、空集合、空字典、空字符串)、空range对象、空迭代对象。其他情况,均为True。

4.字符串

 

Python的字符串是不可变的,我们无法对原字符串做任何修改
Python3直接支持Unicode,可以表示世界上任何书面语言的字符。
使用内置函数ord()可以把字符转换成对应的Unicode码;
使用内置函数chr()可以把十进制数字转换成对应的字符
连续三个单引号或三个双引号,可以帮助我们创建多行字符串
print(ord('A'))
print(chr(65))
s='''
  I
   Love
     Python
  '''
print(s)
# Python允许空字符串的存在,不包含任何字符且长度为0
c = ''
print(len(c))       #结果:0
# 用于计算字符串含有多少字符
d = 'abc尚学堂'
len(d)  #结果:6
# 修改后重新赋值,产生新的对象
a = 'abcdefghijklmnopqrstuvwxyz'
a = a.replace('c','高')
print(a)
# 提取字符[]    正向提取,反向提取,最右边索引为-1,最左边为0
print(a[0],a[-1])
# 字符串切片slice(开始,结束,步长),步长默认为1,包头不包尾
print(a[0:5:1])
# a[:结束]    包头不包尾
print(a[:5])
# a[开始:结束]    包头不包尾
print(a[0:5])
# 逆序
print(a[::-1])
# 包头包尾
print(a[-3:])
# 包头不包尾
print(a[-8:-3])
# split()分割
n = "to be or not to be"
k=n.split('b')
print(k)
# join()合并,使用字符串拼接符+,会生成新的字符串对象,因此不推荐使用+来拼接字符串
m = ['sxt','sxt100','sxt200']
print('*'.join(m))
# 字符串驻留:常量字符串只保留一份。
c = "dd#"
d = "dd#"
print(c is d)   #True
'''字符串比较和同一性
我们可以直接使用==      !=对字符串进行比较,是否含有相同的字符。
我们使用is,not is,判断两个对象是否同一个对象。比较的是对象的地址,即id(obj1)是否和id(obj2)相等。
成员操作符判断子字符串'''
# 判断某个字符(子字符串)是否存在于字符串中。in ,not in
f="ab_22"
v="ab_22"
print(f is v)
# 字符串查找方法
a1='''我是高淇,我在北京尚学堂科技上班。我的儿子叫高洛希,他6岁了。
     我是一个编程教育的普及者,希望影响6000万学习编程的中国人。我儿子现在也开始学习编程,
     希望他18岁的时候可以超过我'''
# 1.字符串是否以这个字符开头
print(a1.startswith('我是高淇'))
# 2.字符串是否以指定字符串结尾
print(a1.endswith('超过我'))
# 3.第一次出现指定字符串的位置
print(a1.find("是"))
# 4.最后一次出现指定字符串的位置
print(a1.rfind("可以"))
# 5.指定字符串出现了几次
print(a1.count("希望"))
# 6.判断字符串中所有字符是否全是字母或数字
print(a1.isalnum())
# 去除字符串指定的首尾的字符
# strip()去除字符串首尾指定信息
g=" *s*d*l* "
print("-----------------------")
print(g.strip(""))
# lstrip()去除字符串左边指定信息
g="*s*d*l*"
print(g.lstrip("*"))
# rstrip()去除字符串右边指定信息
g="    s*d*l "
print(g.rstrip(" "))
# 大小写转换
a2= "gaoqi  love  programming, love  SXT"
# 首字母大写,产生新的字符串
print(a2.capitalize())
# 产生新的字符串,每个单词都首字母大写
print(a2.title())
# 产生新的字符串,每个单词都转大写
print(a2.upper())
# 产生新的字符串,每个单词都转小写
print(a2.lower())
# 产生新的,所有字母大小写相互转换
print(a2.swapcase())
# 特征判断
'''
isalnum() 是否为字母或数字
isalpha() 检测字符串是否只由字母组成(含汉字)
isdigit() 检测字符串是否只由数字组成
isspace() 检测是否为空白符
isupper() 是否为大写字母
islower() 是否为小写字母
'''
print("sxt100".isalnum())
print("sxt尚学堂".isalpha())
print("234.3".isdigit())
print("23423".isdigit())
print("\t\n".isspace())
print("aB".isupper())
print("A".isupper())
# 格式排版
a3="SXT"
print(a3.center(10,"*"))
print(a3.center(10))
print(a3.ljust(10,"*"))
print(a3.ljust(10,"*"))
# format格式化
# 1.按照索引,位置必须一致
a4= "名字是:{0},年龄是:{1}"
print(a4.format("高淇",18))
# 按照变量名,可无序
a5="名字是:{name},年龄是:{age}"
print(a5.format(name="高希希",age=6))

# 保留一位小数
f"{s:.1f}"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值