*** 数据类型之间的转化

现有的数据类型有

int(整形)

str (字符串)

bool (布尔值)

list (列表)

dict (字典)

tuple(元组)

set(集合)

主要数据源类型的转换
int <----->str (在前面加想要转换过去的类型), str(), int()

int<-----> 0为假,不是零都是真.   布尔值转换成数字, 真为1, 假为

str ---->bool, 空字符串""为假,非空为真.  bool值转换你为字符串无意义

str <---->  list     str转list用split,  list转str用join (重要)

空列表, 空字典, 空元祖,空集合对应的bool值都为假

list <----> set (要转换就在前面加类型),list转换为set自动去重复
  # 元组中只有一个元素并且没有逗号,则ta不是元组,与元素数据类型相同。
  # 括号里加了逗号,ta就是元组了
  tu1 = (1,)
  tu2 = ('alex',)
  tu3 = ([1,2,3],)
  print(tu1, tu2, tu3)
list <----> tuple (要转换在前面加类型)
  l1 = [1,2,3]
  tu1 = tuple(l1)
  l2 = list(tu1)
  print(tu1)
  print(l2)
dict -----> list 打印字典的key值 
  dic1 = {'name': 'alex', 'age': 12}
  print(list(dic1))     #['name', 'age']

dict
-----> tuple 打印字典的key值
  dic1 = {'name': 'alex', 'age': 12}
  print(tuple(dic1))            # ('name', 'age')

list 的题:

li = [11, 22, 33, 'alex', 55]
将列表中索引为奇数位的元素删除。
方法一:
del li[1::2]
print(li)


错误实例:
for index in range(len(li)):
    if index % 2 == 1:
        li.pop(index)
print(li)
在循环一个列表时,最好不要改变列表的大小,这样会影响你的最终结果。


方法二:
new_l1 = []
for index in range(len(li)):
    if index % 2 == 0:
        new_l1.append(li[index])
li = new_l1
print(li)
# dict 在循环一个字典时,不能改变字典的大小,会报错。
dic = {'k1':1,'k2':2, 'k3': 3, 'name': '太白'}
将字典中键含有k元素的键值对删除

for key in dic:
    if 'k' in key:
        dic.pop(key)
l1 = []
for key in dic:
    if 'k' in key:
        l1.append(key)
# print(l1)
for k1 in l1:
    dic.pop(k1)
print(dic)
原文地址:https://www.cnblogs.com/jack20181017/p/10182371.html