数据类型之间的相互转换
1、字符串转换成数字类型
判断哪些可以转换成数字型可以参考下面例题:
# 判断实现将所有能转换为数字类型的字符串都转换为对应类型的数字
# int: '10' = > 10 | '-10' = > -10
# float: '0.1' = > 0.1 | '-0.1' = > -0.1 | '.1' = > 0.1 | '-.1' = > -0.1
# num = input('>>:')
# if num.startswith('+'):
# num = num[1:]
# ls = num.split('.')
# if num.startswith('-'):
# if ls[0] == '-' and ls[1].isdigit():
# print('float',float(num))
# elif ls[0][1:].isdigit() and len(ls) == 1:
# print('int',int(num))
# elif ls[0][1:].isdigit() and ls[1].isdigit():
# print('float',float(num))
# else:print('no','输的什么鸟东西')
# else:
# if ls[0] == '' and ls[1].isdigit():
# print('float', float(num))
# elif ls[0].isdigit() and len(ls) == 1:
# print('int',int(num))
# elif ls[0].isdigit() and ls[1].isdigit():
# print('float',float(num))
# else:print('no','输的什么鸟东西')
2、数字类型转换成字符串类型:直接 str(数字类型)
3、字符串和列表之间的相互转换******
1)字符串转换成列表
str.split() 切分,通过括号里的切割符号把str转换成列表
2)列表转换成字符串
'连接符号'.join(list)
#再通过’‘里面的连接符号把列表里的元素连接起来
字符编码
数据都是存在硬盘中,cpu需要到硬盘中调取数据,中间会经过内存
应用程序打文本开文件流程
1、打开应用程序
2、将数据加载到内存中
3、cpu将内存中的数据直接翻译成字符形式呈现给用户
python解释器打开文本文件流程
1、打开python解释器
2、将数据加载到内存中
3、python解释器把文本内容解释执行,把最终结果呈现给用户,如果出现错误,就把错误信息展示给用户
字符编码
1、ascll码表
1个字节表示一个英文字符和符号,不支持其他国家语言
2、GBK
中国的编码表(兼容ascll码表),2个字节表示一个汉字
3、万国码Unicode、utf-8、utf-16(utf-8和utf-16采用 同一张编码表,即Unicode)
-->Unicode(utf-16):以定长2个字节表示各种语言和符号(包括英文也是2个字节),
主要是在内存条中,因为定长读写数据比较快,不需要考虑语言的变化而取不同的字节表示
-->utf-8:以变长表示各种语言和符号(英语用一个字节表示,中文用3到6个字节)
主要是在硬盘和cpu中,因为用变长存储数据可以节省空间,这样在从硬盘到cpu的传输速度就会大大加快