Python中的基础数据类型(String,Number)及其常用用法简析
2020-05-19 11:50 zouhui 阅读(161) 评论(0) 编辑 收藏 举报前言
哈喽,各位小伙伴们,相信大家和我一样,在开始接触Python这门语言的时候,会遇到很多困难。这边小编简单为大家总结下Python的基本数据类型,方便查看记忆。这没什么难点,只是琐碎了一些...
Python中的数据类型
Number(数字)
String(字符串)
List(列表)
Tuple(元组)
Set(集合)
Dictionary(字典)
分类
不可变数据类型:Number、String、Tuple
可变:List、Dictionary、Set
变量在Python中的操作
python支持多变量赋值,如:
a = b = c = 1
print(a)
print(b)
print(c)
此时三个变量a=1, b=1, c=1
a, b, c = 1, 2, 3
print(a)
print(b)
print(c)
此时a=1,b=2,c=3
这样可以互换两个变量的值,如:
a = 1
b = 2
a, b = b, a
print(a)
print(b)
不难发现a,b这两个变量的值已经交换了...
而其他语言只能利用第三个变量完成两个变量的交换:
a = 1 # 赋值
b = 2 # 赋值
c = a # 将第一个变量的值赋值给第三个变量,此时c保存了1
a = b # 将第二个变量的值赋值给第一个变量,此时a保存了2
b = c # 再将定义的第三个变量的值赋值给第二个变量,此时c保存的1赋值给b,完成交换
print(a)
print(b)
查看数据类型
type(x),如:
a, b, c = 1, True, 1.0
print(type(a), type(b), type(c))
# 结果<class 'int'> <class 'bool'> <class 'float'>
a, b, c = '1', 'True', '1.0'
print(type(a), type(b), type(c))
# 结果<class 'str'> <class 'str'> <class 'str'>
Number
temp = '123' # 非数字字符串会出错
print(type(temp)) # <class 'str'>
res = int(temp)
print(type(res), res) # <class 'int'> 123
temp = "b"
res = int(temp, base=16) # 这里可以指定进制,注意不要超出进制范围,默认10进制
print(type(res), res)
print(1 == True) # True
print(0 == False) # True
关于Number类型知道与String相互转换,其他的数学运算几乎用不到,想了解请自行尝试,内容如下:
abs(x)返回数字的绝对值
ceil(x)向后取整
cmp(x,y)若x < y 返回-1, 若 x == y 返回0, 若 x > y 返回1。Python 3 使用 (x>y)-(x<y) 替换
exp(x)返回e的x次幂(ex)
fabs(x)返回数字的绝对值
floor(x)向前取整
log(x)返回x的自然对数,x>0
log10(x)返回以10为基数的x的对数
max(x1,x2...)返回给定参数的最大值,参数可以为序列
min(x1,x2...)返回给定参数的最小值,参数可以为序列
modf(x)返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示
pow(x,y)返回x**y 运算后的值
round(x[,n])返回x四舍五入的值,n为保留小数位数
sqrt(x)返回数字x的平方根
String
获取字符串的长度
temp = 'hahahahahahaha'
print(len(temp)) # 14
切片取值
# [起始位置索引:结束位置索引,不包含:步长]
temp = "abcdefg"
res1 = temp[::] # 注意:不可少
print(res1) # abcdefg
res2 = temp[0:-1:2]
print(res2) # ace
字符串的格式化
# 按默认一对一格式化
temp1 = "我叫{},今年{}岁了!"
res1 = temp1.format('咸鱼',22)
print(res1) # 我叫咸鱼,今年22岁了!
# 按索引格式化
temp2 = "我叫{1},今年{0}岁了!"
res2 = temp2.format('咸鱼',22)
print(res2) # 我叫22,今年咸鱼岁了!
# 键值对
temp3 = "我叫{name},今年{age}岁了!"
res3 = temp3.format(age=22,name='咸鱼')
print(res3) # 我叫咸鱼,今年22岁了!
find
# 找到第一个位置 .find("e",[开始位置],[结束位置]) 注意不包含结束位置 <=开始位置 >结束位置
# 找到返回索引 找不到返回-1
temp = "hahe"
res = temp.find("h",1,3)
print(res)
lower
# 将字符串中的所有大写字母转换为小写字母
temp = "AAAaaaBBbb"
res=temp.lower()
print(res) # aaaaaabbbb
upper
# 将字符串中的所有小写字母转换为大写字母
temp = "abc"
res=temp.upper()
print(res) # ABC
strip
# 删除字符串的前后空格(换行、制表符、指定参数)
# 默认删除换行符,制表符,空格等特殊符号
temp = " a aa \n "
res=temp.strip( )
print(res) # a aa
join
# 字符串拼接
# join方法是将字符串的每一位与调用的字符串进行拼接,除最后一位
temp1 = 'abcd'
temp2 = '-'
res1 = temp2.join(temp1)
print(res1) # a-b-c-d
# 并不是两个字符串直接拼接
temp3 = 'abc'
temp4 = '123'
res3 = temp3+temp4
print(res3) # abc123
replace
# 替换指定字符串replace('需要更新的字符串','更新的字符串',[更新几个字符串,默认全部,超过位数不报错])
temp = 'hahahaha'
res = temp.replace("a", "e", 50)
print(res) # hehehehe
关于字符串的内置函数无敌的多,其他实际也用不到...我就懒了...欢迎大家在留言区补充......
—END—