Python数据类型

Python 基础

只有永远躺在泥坑里的人,才不会再掉进坑里。——黑格尔

数据类型

在 Python 中有八种数据类型

  • 数字
  • 字符串
  • 布尔
  • None
  • 元祖
  • 列表
  • 字典
  • 集合

前四组都是简单类型,后四组都是复杂类型.本节讲述简单类型

判断数据类型 type


arr = [1, 2, 3, 4]

result = type(arr)

if result is list:
    print("格式正确")

# 结果
# class <list>

数字类型

  • 整型

  • 浮点型

类型转换

  • 把字符串变成整型 int()

num1 = 42.000
result = int(num1)
print(result)

# 结果

# 42

num3 = '42'

result3 = int(num3)

print(result3)

# 结果
# 42

# 这种会报错

num2 = '42.000'

result2 = int(num2)

print(result2)

# 结果报错

# 下一种也报错

num4 = '00aaa42'

result4 = int(num4)

print(result4)

# 结果
# 报错
  • 转换成 float()

# 分隔

num2 = '42.000'

result2 = float(num2)

print(result2)

# 结果
# 42.0
  • python 整数相除 结果是 float,要是想变成整型 必须双// ,另外两个** 代表幂指数

result = 2 / 2

print(result)

print(type(result))

# 结果

# 1.0

# float

result2 = 2 // 2

print(result2)

print(type(result2))

# 结果

# 1

# int

result3 = 3**2

print(result3)

# 结果

# 9
  • 一些数学函数 min,max,round,sum

max 最大值


arr = [1, 2, 3, 4, 5]
result = max(arr)
print(result)

# 结果
# 5

min 最小值

arr = [1, 2, 3, 4, 5]
result = min(arr)
print(result)

# 结果
# 1

round 四舍五入

str = 43.609
result = round(str)
print(result)

# 结果
# 44

字符串链接和复制

  • 字符串转换 str()

result = 45.00232
result2 = str(result)

print(type(result2))

# 结果
#<class 'str'>
  • 字符串拼接 +

result = "Hello"
result2 = "Job"

print(result+result2)

# 结果
# HelloJob
  • 全部大写 upper()

str = "hello"
result = str.upper()
print(result)

# 结果
# HELLO
  • 全部小写 lower()

str = "HELLO"
result = str.lower()
print(result)
  • 首字母大写

str = "hello this is a new day"
result = str.title()
print(result)

# 结果
# Hello This Is A New Day
  • 以 startswith 开头

str = "hello this is a new day"
result = str.startswith('hello')
print(result)

# 结果
# True
  • 以 endswith 结束

str = "hello this is a new day"
result = str.endswith('day')
print(result)

# 结果
# True
  • 去掉左右两边空格

str = "  hello this is a new day  "
result = str.strip()
print(result)

# 结果
# hello this is a new day
  • 去掉左边的空格
str = "  hello this is a new day  "
result = str.lstrip()
print(result)
# 结果
# hello this is a new day
  • 去掉右边的空格
str = "  hello this is a new day  "
result = str.rstrip()
print(result)
# 结果
#  hello this is a new day
  • 字符串分割

str = "hello this is a new day"
result = str.split(" ")
print(result)

# 结果
# 按照空格截取
# ['hello', 'this', 'is', 'a', 'new', 'day']

或者比如要是想拆分单个字符(拆分单个字符必须变成数组)


str = "hello"
result = list(str)
print(result)

# 最后结果

# ['h', 'e', 'l', 'l', 'o']
  • find()搜索指定字符串,有就返回序号,没有就返回-1
str = "hello"
result = str.find('e')
print(result)

# 结果
# 1
  • 个数 len()统计出字符串个数

str = "hello"
result = len(str)
print(result)

# 最后结果
# 5
  • 替换 replace() 两个参数 第一个参数要替换的值 第二个参数替换成什么值, 这里特别注意的就是 replace 不改变原字符串,它只改变新的字符串

str = "hello"
result = str.replace('e', 'w')
print(result)

# 结果
# hwllo
  • range 生成一个整数的序列,一般配套 list 使用

  • 它接收 3 个参数(起始,结束,步长) 包前不包后


str = "hello"
result = range(len(str))
result2 = list(result)
print(result2)

# 结果
# [0,1,2,3,4]

或者


result = range(2, 10, 2)
for content in list(result):
    print(content)

# 结果
# 2,4,6,8
  • 地址需要转义字符\ 也可以前面加个 r 这样就不是一个普通字符串而是一个原始字符串

print(r'c:\windows\webbrowers')

# 结果

# c:\windows\webbrowers

布尔

在 Python 里面 布尔类型其实也属于数字类型的一种,True 就是 1 False 就是 0


result = int(True)

print(result)

result2 = int(False)

print(result2)

# 结果

# 1

# 0
  • 在 Python 中布尔值首字母需要大写比如 True 和 False

result = True
if result:
    print("这是对的")
else:
    print("这是错的")
# 结果这是对的
  • 布尔类型的其他也可以当作 True 或者 False

result = 60/1
if result:
    print("这是对的")
else:
    print("这是错的")

# 这种也是可以的
  • 特别强调的是这里与 JS 不一样,Python 中{}[]它的布尔类型为 False

result = bool({})

print(result)

# 结果False

result2 = bool([])

# 结果False

result3 = bool('')

# 结果 False

变量名和赋值语句

变量名

  • 只能包含字母,数字和下划线

  • 只能一个词,不能是关键字比如 class ,print 之类的

  • 不能以数字开头

变量名是区分大小写的.

赋值语句

  • 用”赋值语句”将值保存在变量中,赋值语句包含一个变量名,一个等号(称为赋值操作)以及要存储的值。如果输入赋值语句 result = 42 那么名叫 result 的变量就保存了类型是整型的值 42

result = 42

print(result)
  • 在 python 中值要是做四则运算必须赋值,否则不成立

num1 = 23

num1 + 10

print(num1)

# 结果还是 23

# 所以必须赋值

num2 = 23

num2 += 10

# num2 = num2 +10

print(num2)

# 结果 33
  • 拼接的时候数字必须要变成字符串,否则 Python 会直接报错

result2 = "今天是" + str(12) +"号"

print(result2)
  • 同理使用数字求运算的时候必须

num1 = 23

num2 = '28'

print(num1 + int(num2))

# 结果
# 51

最常用的几个函数

  • print() 将括号内的字符串显示在屏幕上

print("Hello World!")

# 结果
# Hello World

要是后面设置了 end 参数表示后面的数据取消了换行

str1 = "今天开始"
str2 = "明天结束"
print(str1, end='')
print(str2)

# 结果
# 今天开始明天结束
  • input()函数 获取到用户输入的内容,里面的参数就是提示用户输入的

myName = input('请输入名称')

print(myName)

# 结果

# 输出用户自己输入的
  • len() 获取到个数

str ='今天开始'

myName = len(str)

print(myName)

# 结果

# 4

文章作者: 雾烟云
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 雾烟云 !
  目录