Python常见数据类型之Number、String、List(1)

目录

一、Number(数字)

二、String(字符串)

三、List(列表)


Python3 的六个标准数据类型:

  • 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
  • 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

Python 的变量不需要声明,每个变量在使用前必须赋值,变量赋值了才会被创建。

在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。

一、Number(数字)

Python3 支持 int、float、bool(0/1)、complex(复数)

1、查看数字类型的常用函数

        type(变量)   isinstance(变量名,数据类型)

num_class = 180
# 查看变量类型
print(type(num_class), end=' ')
print(num_class)
zx = 9.3
print(type(zx), end=' ')
print(zx)
# 判断变量是否为某个数据类型,如果是指定某个类型则返回True,否则返回False
print(isinstance(num_class, int))
<class 'int'> 180
<class 'float'> 9.3
True

2、数字运算符:+ - /   *  **   //  %

print("8/3 =", 8 / 3) # 整数除法返回浮点型
print("8/2 =", 8 / 2)
print("8//3 =", 8 // 3) #整数除法返回向下取整后的结果
print("8//3.00 =", 8 // 3.00)
print("3 ** 4 =", 3 ** 4) #a**b  a的b次幂
print("8 % 3的余数", 8 % 3) # %操作符返回除法的余数
8/3 = 2.6666666666666665
8/2 = 4.0
8//3 = 2
8//3.00 = 2.0
3 ** 4 = 81
8 % 3的余数 2

3、常用的数字类型函数

abs()取数字的绝对值

ceil(x)返回数字的上入整数    ceil(4.1)  返回  5

floor(x) 返回数字的下舍整数    floor(5.4)  返回5

value1 = math.floor(5.6) #下舍整数
value2 = math.ceil(4.01) #上入整数
value3 = abs(-3) #绝对值
print(value1, value2, value3) # 5 5 3

round(x,n)四舍五入   n保留几位小数,实准确的说是保留值将保留到离上一位更近的一端。

拓展:Python 浮点数计算 小数取舍指南

二、String(字符串)

1、定义:Python中的字符串用单引号/双引号/三个单/双引号括起来

str1='123456'
str2="哈哈"
str3='""雪娥""'
str4='''苞娜'''
print(str1,str2,str3,str4) #123456 哈哈 ""雪娥"" 苞娜

2、python字符串支持截取

切片语法格式: 变量名称[开始索引位置:结束的索引位置:步长 ]

根据索引值区间取值:会包含开始索引值,不会包含结束索引位置的值(含头不含尾/左闭右开)

索引值从左往右  从0开始,依次+1

索引值从右往左   从-1开始,依次-1

"""根据索引区间取值"""
str1 = '123456'
print("str1[0:6]", str1[0:6])
# 字符串最后的一个字符
print("str1[-1]", )
# 倒数第二
print("str1[-2]", str1[-2])
# 从某个位置开始取到末尾
print("str1[1:]", str1[1:])
# 隔一个字符从左往右取值
print("str1[0::2]", str1[0::2])

str4 = """MS221_NN"""
print(str4[-1::-2])
print(str4[::-1])
print(str4[::])
str1[0:6] 123456
str1[-1]
str1[-2] 5
str1[1:] 23456
str1[0::2] 135
N_2S
NN_122SM
MS221_NN

3、特殊的符号

特殊字符需要原字符输出 :

方式一: \ 转义

方式二:r/R

特殊的字符有哪些:\n \' \" \\  \t  \000

str5 = R'\n'
str6 = r'\n'
print(str5, str6)

4、字符串运算符:+  *  in  not in

"""
+  字符串的拼接
* 复制   复制2   *2
in     成员判断
not in 
"""
str7 = "abc"
str8 = "edfg"
print(str7 * 3)
print('a' not in str8)
abcabcabc
True

5、字符串的格式化

"""
字符串格式化
格式化 方式一:
%s 字符串占位符
%d  整数占位符
%u  无符号整型
%f  浮点数字
方式二:
"""
name = "就这"
age = 18
print("欢迎" + name + ",工作年限:" + str(age))

print("格式化方式一:欢迎 %s,工作年限:%d" % (name, age))

# 格式化第二种方式
str9 = "格式化方式二:欢迎{1},工作年限:{0}".format(age, name)
print(str9)

# 格式化第三方式
str10 = f"格式化方式三:欢迎{name},工作年限:{age}"
print(str10)
欢迎就这,工作年限:18
格式化方式一:欢迎 就这,工作年限:18
格式化方式二:欢迎就这,工作年限:18
格式化方式三:欢迎就这,工作年限:18

1、string常见的内置函数

1)大小写转化函数

str13="abcdef123_"
print("转化为大写:",str13.upper())
# 转化为小写
lower=str13.lower()
# 首字母大写
cap=str13.capitalize()
print(lower)
print(cap)

2)  字符格式的判断

str13="abcdef123_"
print("是否字母或者数字:",str13.isalnum())
str14="言"
print("是否是字母或者中文:",str14.isalpha())
str15='123456'
print("是否为纯数字",str15.isnumeric())

3)  统计函数 

        max() min() len() 是通过ASCII来进行比较,0-9,a-z,A-Z
str16 = "1234567abcd"
print(max(str16), end=" ")
print(min(str16), end=" ")
print(len(str16), end=" ")

4)  常见字符串处理函数

1、查找 find/index查找字符
        find 找到字符返回匹配字符的开始索引值,否则返回-1
        index 找到字符返回匹配字符的开始索引值,没有找到报异常
        区别:indext方法没有找到匹配的值,则会报异常,而find则返回-1
names="jeffery NN water"
value=names.find("NN",0,-1)
value1=names.find("NN",0,len(names))
print('名称:',value)
if value!=-1:
    print('找到')
else:
    print('没找到')
index=names.index("NN",0,-1)
print(index)
2、按照指定分隔符连接字符串各个元素 join

str17="helloworld"
new='-'.join(str17)
print(new) #h-e-l-l-o-w-o-r-l-d
3、根据指定的分隔符把字符串转为List split
newstr='h-e-l-l-o-w-o-r-l-d'
newlist=newstr.split('-')
print(newlist,end=" ")
print(type(newlist))
names2="jeffery NN water"
newlist2=names2.split(' ')
print(newlist2)
['h', 'e', 'l', 'l', 'o', 'w', 'o', 'r', 'l', 'd'] <class 'list'>
['jeffery', 'NN', 'water']
4、替换字符串中部分字符 replace
names2="jeffery NN water"
new_replace=names2.replace("NN","MS221")
print("替换后的字符串:",new_replace)
5、前后去空格 strip() lstrip()左边去空格 rstrip()右边去空格
str18=" abcdefg "
print(str18)
newstr=str18.strip()
print(newstr)

拓展:字符串练习题

三、List(列表)

1、什么是列表

list 列表序列数据类型,类似于tuple元组,他们的区别:元组是不可变 list可变数据类型
列表可以存储多个元素,元素与元素之间通过 ,隔开,通过[]表示,元素的类型可以为任意类型
2、如何获取列表中的元素? 切片
3、修改列表元素的值? 可以 可变数据类型
list1=['list1','金炫廷','孙周延']
print(list1)
print(list1[-1])
list1[-1]='切片'
print(list1)
['list1', '金炫廷', '孙周延']
孙周延
['list1', '金炫廷', '切片']

4、删除列表元组或者列表 可以 pop remover()

del list1[-1]
print(list1)
list3=['abcdef']
del list3

5、list常用的运算符 + * in/not in

list1=['list1','金炫廷','孙周延']
new=["A",'B']*2
name211=list1+new
print(name211)
print('list1' in list1)

6、嵌套列表

list4=['01','02',['03','NN']]
#嵌套列表中NN ?
print(list4[-1][1])

7、list常见内置函数

len()  min()  max()
list(元组) 元组转化为列表
添加元素
append() 列表最后添加新元素(追加新元素)
extend() 追加多个元素
insert() 指定索引位置,添加元素
list5=[1,2,3,4]
list5.append(5)
print(list5)
list5.extend([6,7,8,9])
print(list5)

list5.append([6,7,8,9])
print(list5)
list5.insert(0,0)
print(list5)
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9, [6, 7, 8, 9]]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, [6, 7, 8, 9]]
删除元素
pop(index=-1) ,默认移除最后的一个元素
列表中允许多个重复的值 可以
remove 根据指定的值进行移除,移除列表中的某个值的第一个匹配项
#删除元素
print("pop(),默认移除最后的一个元素")
list6=["01",'02','03','04','05']
print(list6)
value=list6.pop()
print(value)
print(list6)
value=list6.pop(1)
print("list6.pop(1)",list6)


print("remove 根据指定的值进行移除,移除列表中的某个值的第一个匹配项")
list7=["01",'02','03','04','01']
value2=list7.remove('01')
print("value2",value2)
print(list7)
reverse() 反转列表元素
list8=[1,2,3,4,5,6]
print(list8,"反转列表元素",end=" ")
list8.reverse()
print(list8)
[1, 2, 3, 4, 5, 6] 反转列表元素 [6, 5, 4, 3, 2, 1]
sort() 排序 默认降序 clear() 清空列表元素 copy() 复制新列表
list9=[2,5,0,10,30,20,3,100]
print(list9)
print("默认升序",end=" ")
list9.sort()
print(list9)
print("降序排列",end=" ")
list9.sort(reverse=True)
print(list9)

print(id(list9))
print("复制列表",end=" ")
list10=list9.copy()
print(list10)
print(id(list10))

print("清空列表元素print",end=" ")
list10.clear()
print(list10)
[2, 5, 0, 10, 30, 20, 3, 100]
默认升序 [0, 2, 3, 5, 10, 20, 30, 100]
降序排列 [100, 30, 20, 10, 5, 3, 2, 0]
2054163333888
复制列表 [100, 30, 20, 10, 5, 3, 2, 0]
2054163333696
清空列表元素print []
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天草柑橘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值