Python02.5.数据类型-运算符-数据总结

4.运算符

  • 身份运算(is ,is not)
  • is比较的是id,而双等号比较的是值
  • 毫无疑问,id若相同则值肯定相同,而值相同id则不一定相同

>>> x=1234567890

>>> y=1234567890

>>> x == y

True

>>> id(x),id(y)

(3581040, 31550448)

>>> x is y

False

5.for循环

循环可以迭代的对象里面的内容:

name = ('nick','jenney')

for i in name: print(i)

 
  • for和while的应用场景:有穷尽优先使用for, 无穷尽用while

6.enumrate创建序列号

  为一个可迭代的对象添加序号,可迭代的对象你可以理解成能用for循环的就是可迭代的。默认是编号是从0开始,可以设置从1开始

li = ["手机", "电脑", '鼠标垫', '游艇']

for k, i in enumerate(li,1):

print(k,i)

手机

电脑

鼠标垫

游艇

7.range和xrange

迭代循环:不会先在内存中创建,而是每次循环就创建一次,(节约内存)

for i in range(10): #循环输出所生成的 0-9

print(i)

=========================================

for i in range(1,10,2): #输出所生成的 1 3 5 7 9

print(i)

可以设置步长 ----->> range(0,100,2)

range 里面会生成一个列表 [0,1,2,3,4,5,6,7,8,9,10]

8.==和is的区别

'''查看内存相关'''

v2 = 'zhangs'

print(id(v2)) # 查看内存地址

======================================================

# python数据的小数据池 -5~256

======================================================

''' ==和is的区别'''

# == 比较的是值

# is 比较的是内存地址

9.数据类型间的转换问题

  • int bool  str 三者转换

# int ---> bool

i = 100

print(bool(i)) # True # 非零即True

i1 = 0

print(bool(i1)) # False 零即False

======================================================

# bool ---> int

t = True

print(int(t)) # 1 True --> 1

t = False

print(int(t)) # 0 False --> 0

======================================================

# int ---> str

i1 = 100

print(str(i1)) # '100'

======================================================

# str ---> int # 全部由数字组成的字符串才可以转化成数字

s1 = '90'

print(int(s1)) # 90

======================================================

# str ---> bool

s1 = '太白'

s2 = ''

print(bool(s1)) # True 非空即True

print(bool(s2)) # False

# bool ---> str

t1 = True

print(str(True)) # 'True'

  • str list 两者转换

# str ---> list

s1 = 'alex 太白 武大'

print(s1.split()) # ['alex', '太白', '武大']

======================================================

# list ---> str # 前提 list 里面所有的元素必须是字符串类型才可以

l1 = ['alex', '太白', '武大']

print(' '.join(l1)) # 'alex 太白 武大'

  • list set 两者转换

# list ---> set

s1 = [1, 2, 3]

print(set(s1))

======================================================

# set ---> list

set1 = {1, 2, 3, 3,}

print(list(set1)) # [1, 2, 3]

  • str bytes 两者转换

# str ---> bytes

s1 = '太白'

print(s1.encode('utf-8')) # b'xe5xa4xaaxe7x99xbd'

======================================================

# bytes ---> str

b = b'xe5xa4xaaxe7x99xbd'

print(b.decode('utf-8')) # '太白'

  • 所有数据都可以转化成bool值

'', 0, (), {}, [], set(), None

10.数据类型总结

  • 集合:无序,即无序存索引相关信息
  • 元组:有序,需要存索引相关信息,不可变
  • 列表:有序,需要存索引相关信息,可变,需要处理数据的增删改
  • 字典:无序,需要存key与value映射的相关信息,可变,需要处理数据的增删改
原文地址:https://www.cnblogs.com/cable-run/p/12161429.html