01_Python3_数据类型

文章目录

    • 环境搭建
    • 快速入门
    • 注释
    • 常用数据类型
      • 数值型
        • 基本运算
        • 类型转换
        • 常用函数(看看就行了)
      • 字符串
        • 基本运算
        • 常用方法
      • 布尔值
        • 比较运算
        • 逻辑运算
      • 列表
        • 运算操作
        • 常用函数
        • 常用方法
      • 元祖
        • 运算操作
        • 常用函数
        • 常用方法
      • 字典
      • 集合
        • 运算操作
        • 常用函数
        • 常用方法

环境搭建

直接使用Anaconda

快速入门

print('Hello World')
# 注意:不用写 ;

# 定义变量 a 值为 1
a=1  
# 输出变量 a 的值
print(a)
# 删除变量 a 的引用 可以同时删除多个变量的引用逗号分隔
del a
# 此时输出会报错 因为a的引用已经被删除了
print(a)

注释

三种注释:

# 这是第一种 属于行注释

'''
这是第二种 属于多行文本注释
'''

"""
这是第三种 属于多行文本注释
"""

常用数据类型

数值型

  • 整数:123

  • 浮点数:1.23

  • 复数:1+2j 实部1,虚部2

基本运算

唯一特殊的是除法和幂运算,其它和java一致

# 除法使用 // 同java中的除法
>>> 5//2
2

# 使用 / 除法时候 整数会计算出浮点数
>>> 5/2
2.5

# 幂运算 使用两个*表示
>>> 2 ** 3
8

# 比较运算 就是大于小于不等于这些,和java写法一致 输出Boolean
>>> 2>1
True

类型转换

# input() 表示从键盘获取输入
>> a = input()
2
>> a
'2'

# 发现此处输出的 2 是字符串 并非是数值 所以需要类型转换

#input('请输入一个整数:') 带用户提示的键盘获取
>> a = input('请输入一个整数:')
请输入一个整数:
2
>> x = int(a)
>> x
2
# 这里x就是数值型了

常用函数(看看就行了)

函数 功能描述
abs(x) 绝对值
ceil(x) 向上取整:ceil(4.5) ===>5
exp(x) e的x次幂
fabs(x) 返回浮点数的绝对值
floor(x) 返回浮点数的下舍整数
log(x) 返回 x 的自然对数
log10(x) 返回以 10 为基数的 x 的对数
max(x, y) 返回给定参数的最大值
min(x, y) 返回给定参数的最小值
pow(x, y) 返回以 x 为底数、y 为指数的运算结果
round(x) 返回浮点数 x 的四舍五入值
sqrt(x) 返回数值 x 的平方根
acos(x) 返回 x 的反余弦弧度值
asin(x) 返回 x 的反正弦弧度值
atan(x) 返回 x 的反正切弧度值
cos(x) 返回 x 的弧度的余弦值
hypot(x, y) 返回欧几里德范数 sqrt (xx + yy)
sin(x) 返回的 x 弧度的正弦值
tan(x) 返回 x 弧度的正切值
degrees(x) 将弧度转换为角度
radians(x) 将角度转换为弧度

字符串

有两种方式,单引号和双引号都可以

还有一种特殊的多行字符串,使用三个单引号或双引号包裹

基本运算

# 运算符+ 不说了,拼接

# 运算符* 重复次数
>>> 'hello' * 2
'hellohello'

# 长度
>>> len('hello')
5

# 索引 0开始 很好理解;从后往前是从-1开始
>>> s = 'hello'
>>> s[0]
'h'
>>> s[4]
'o'

# 索引[:]  string[start:end] 老规矩了 左包右不包
>>> s = 'hello'
>>> s[1:3]
'el'

# in 和 not in 判断是否包含指定字符串
>>> 'hel' in 'hello'
True
>>> 'hel' not in 'hello'
False

常用方法

# capitalize() 大写首字母
>>> s = 'hello'
>>> s.capitalize()
'Hello'

# count() 统计字符串出现的次数
>>> s = 'ababa'
>>> s.count('aba')
1

# startswith(str) 检查字符串是否以str开头
>>> 'hello'.startswith('hel')
True

# endswith(str) 检查字符串是否以str结尾
# lower() 全部转小写
# upper() 全部转大写
# islower() 判断是否全是小写字母
# isupper() 判断是否全是大写字母

# find(str) 查找指定字符串位置,没有就返回-1
>>> 'hello'.find('el')
1

# split() 使用空格将字符串分为一个列表
>>> 'hello world !'.split()
['hello', 'world', '!']
# 同样可以指定分割符号 split(xxx)
>>> 'hello,world,my,name,is,python!'.split(',')
['hello', 'world', 'my', 'name', 'is', 'python!']

# format方法
>>> name = '常木耀'
>>> city = '日本'
>>> text = '我是{},我来自{}!'
>>> text.format(name,city)
'我是常木耀,我来自日本!'

# %运算符 
# %s表示字符串 %d表示整数 %f表示浮点数
# %%表示% %c格式化字符及其 ASCII 码
>>> name = '常木耀'
>>> city = '日本'
>>> text = '我是%s,我来自%s!'
>>> text%(name,city)
'我是常木耀,我来自日本!'

# print(str) 输出str

布尔值

  • True 真
  • False 假

比较运算

运算符 功能描述
> 大于
>= 大于或者等于
== 等于
!= 不等于
< 小于
<= 小于等于

逻辑运算

逻辑运算 表达式 功能描述
x and y x 和 y 都为真,则结果为真;x 为假或者 y 为假,则结果为假
x or y x 为真或者 y 为真,则结果为真; x 和 y 都为假,则结果为假
not x x 为真,则结果为假;x 为假,则结果为真

列表

常用的数据类型,占用空间小,浪费内存空间少

与Java数组的区别在于:数据类型可以不一致

# 列表举例
>>> [1,2,'3']

运算操作

#  运算符 +  做拼接
>>> [1,2] + [3,4]
[1,2,3,4]

# 运算符 * 同字符串那个
>>> [1,2] * 2
[1,2,1,2]

# 索引 不说了 0开始 负号从结尾查
# [start:end] 包左不包右
# in 是否包含

常用函数

# len(列表)
>>> len([1,2,3])
3

# max(列表) 获取最大值
# min(列表) 获取最小值
>>> max([1,2,4,3])
4
>>> min([1,2,4,3])
1

常用方法

# append(item) 向列表中新增一个item元素
>>> a = [1,2,3]
>>> a.append(5)
>>> a
[1, 2, 3, 5]

# insert(index,item) 将元素item插入到列表指定位置
# 可以发现 当index超长时 会直接将item加在最后一位
>>> a = [1,2,3]
>>> a.insert(100,5)
>>> a
[1, 2, 3, 5]

# pop() 取走尾部元素并删除,返回该元素
>>> x = ['www', 'porry', 'com']
>>> item = x.pop()
>>> item
'com'
>>> x
['www', 'porry']

# remove(item) 从列表中删除指定元素 item
# 有重复只会删除一个
>>> x = ['porry', 'porry', 'com']
>>> x.remove('porry')
>>> x
['porry', 'com']

# index(item) 查找指定item 返回索引
# 如果不存在 会报错
>>> x = ['45', 'porry', 'por1ry']
>>> x.index('porry')
1

# reverse() 反转
>>> x = ['45', 'porry', 'por1ry']
>>> x.reverse()
>>> x
['por1ry', 'porry', '45']

# sort() 排序
>>> x = [1, 3, 2]
>>> x.sort()
[1, 2, 3]

# sort(reverse = True) 倒序排序
>>> x = [1, 3, 2]
>>> x.sort(reverse = True)
[3, 2, 1]

元祖

和列表类似,区别在于元组创建使用(),

元祖创建后不可修改,列表创建后可以修改

当给变量赋值为元组时,可以不加括号

>>> x=(1,2,3)
>>> x
(1,2,3)

>>> a=(1,)
>>> a==1
False

>>> a=(1)
>>> a==1
True

>>> a=123,145,854
>>> a
(123,145,854)

运算操作

# + * 索引 索引[:] in 都与列表一致,不写了

常用函数

# len(元祖)  max(元祖)  min(元祖)也一致,不写了

常用方法

# 和列表有点区别,因为元组不能更改
# index(item) 查找item所在索引  如没有就报错

字典

类似map,键值对存在

键可重复,但值会被最新的覆盖

>>> a={
     1:100,2:200,3:300,1:400}
>>> a
{
     1: 400, 2: 200, 3: 300}

# 其它操作什么的用到自查吧 也没什么说的
# 值得注意的是 各种遍历键、值、键值对的方式 整体都是 for in

集合

无序 不重复 类似set

>>> x={
     1,1,2,3,1}
{
     1, 2, 3}
# 没有索引操作 直接报错  因为是无序的

运算操作

#  使用运算符 | 来合并两个集合
>>> {
     1,2}|{
     1,3}|{
     2,4}
{
     1,2,3,4}

# in 判断集合中是否存在某一元素 返回boolean
>>> 'porry' in {
     'porry', 'papi', 'piupiu'}
True

常用函数

# len(set) 函数 长度
>>> len({
     1,1,2,3,1})
3

# max(set) 和 min(set)  求最大 最小值  不举例了

常用方法

# add(item) 添加元素
>>> x={
     1,1,2,3,1}
>>> x.add(4)
>>> x
{
     1, 2, 3, 4}

# remove(item) 删除指定元素 如果元素不存在直接报错
>>> x={
     1,1,2,3,1}
>>> x.remove(3)
>>> x
{
     1, 2}

# clear() 清空
>>> x={
     1,2}
>>> x.clear()
>>> x
set()

# union(set) 返回两个集合的并集
>>> x={
     1,2}
>>> y={
     2,4}
>>> z=x.union(y)
>>> z
{
     1,2,4}

# intersection(set)返回两个集合的交集
>>> x={
     1,2}
>>> y={
     2,4}
>>> z=x.intersection(y)
>>> z
{
     2}

# issubset(set) 判断是否是子集
>>> x={
     1,2,4}
>>> y={
     1,4}
>>> y.issubset(x)
True

# issuperset(set) 判断是否是子集
>>> x={
     1,2,4}
>>> y={
     1,4,2,5,6}
>>> y.issuperset(x)
True

你可能感兴趣的:(Python,python)