第6天:数据类型详解(整型、字符串) 您所在的位置:网站首页 sqlserver整型转字符串 第6天:数据类型详解(整型、字符串)

第6天:数据类型详解(整型、字符串)

2023-03-12 04:19| 来源: 网络整理| 查看: 265

2021年12月21 日

文章目录 一、int:整型 1.整数的进制 2.进制之间的转换 3.数字分隔符 4.需要掌握的一个方法int() 二、string:字符串类型 1.将其它数据类型转成字符型 2.字符型用引号包裹 3.字符串可以相加相乘 4.序列 int 和 string 类型的相关重点

一、int:整型 1.整数的进制

①二进制

​ 逢二进一,由 0 和 1 两个数字组成,书写时以0b或0B开头

bin1 = 0b101 print('bin1Value: ', bin1) #运行结果:bin1Value:5 bin2 = 0B110 print('bin2Value: ', bin2) #运行结果:bin2Value:6

②八进制

​ 逢八进一,由 0~7 共八个数字组成,以0o或0O开头。注意,第一个符号是数字 0,第二个符号是大写或小写的字母 O。

oct1 = 0o26 print('oct1Value: ', oct1) #运行结果:oct1Value:22 oct2 = 0O41 print('oct2Value: ', oct2) #运行结果:oct2Value:33

③十进制

​ 逢十进一,由 0~9 共十个数字排列组合而成。注意,使用十进制形式的整数不能以 0 作为开头,除非这个数值本身就是 0。

​ int(m):将m转成十进制的int类型

​ float(m):将m转成小数

a = input('11111') if int (a) == 123: pass

pycharm提供三个数字加一个下划线的方式:320_789_777

④十六进制

​ 逢F进一,由 0~9 十个数字以及 A~F(或 a~f)六个字母组成,书写时以0x或0X开头

hex1 = 0x45 hex2 = 0x4Af print("hex1Value: ", hex1) #运行结果:hex1Value:69 print("hex2Value: ", hex2) #运行结果:hex2Value:1199 2.进制之间的转换

(1)十进制转换为其它进制

​ ①十进制转二进制

bin(3) #二进制 # '0b11'

​ ②十进制转八进制

oct(9) #八进制 # '0o11'

​ ③十进制转十六进制

hex(17) #十六进制 # '0x11'

(2)其它进制转为十进制

​ 统一使用 int(‘进制符号’,进制阿拉伯数字)**

int('0b11',2) # 3 int('0o11',8) # 9 int('0x11',16) # 17 3.数字分隔符

​ python提供了一种数字分割符以便于方便我们查看,更直观的表达数字。

distance = 595_000_000 print("地球和月球的距离:", distance) #运行结果:地球和月球的距离: 595000000 4.需要掌握的一个方法int()

​ 在此处,我们需要知道int() ,就是将括号里的内容转化成int类型的数据。

二、string:字符串类型 1.将其它数据类型转成字符型

整型、列表、字典都可以

a = [1, 2, 3] print(a) print(type(a)) print(str(a)) print(type(str(a))) '''运行结果: [1, 2, 3] [1, 2, 3] ''' b = { 'name': '孜孜淑淑'} print(b) print(type(b)) print(str(b)) print(type(str(b))) '''运行结果: {'name': '孜孜淑淑'} {'name': '孜孜淑淑'} ''' 2.字符型用引号包裹

字符串里想出现引号:单包双或双包单;用转义字符\‘’即可

\ 还可以用来换行

3.字符串可以相加相乘 4.序列

​ 所谓序列,指的是一块可存放多个值的连续内存空间,这些值按一定顺序排列,可通过每个值所在位置的编号(称为索引)访问它们。

①序列索引(下标)

​ 序列中,每个元素都有属于自己的编号(索引)。从起始元素开始,索引值从 0 开始递增。

下标越界:索引超出了界线

②序列类型:字符串、列表、元组、集合

③切片(次重点):字符串和列表通用

​ a[开始位置:结束位置:步长]

​ a[开始位置] 取一个元素,字符

sname[start : end : step]

**sname:**表示序列的名称 **start:**表示切片的开始索引位置(包括该位置),此参数也可以不指定,会默认为 0,也就是从序列的开头进行切片 **end:**表示切片的结束索引位置(不包括该位置),如果不指定,则默认为序列的长度 **step:**表示在切片过程中,隔几个存储位置(包含当前位置)取一次元素,也就是说,如果 step 的值大于 1,则在进行切片去序列元素时,会“跳跃式”的取元素。如果省略设置 step 的值,则最后一个冒号就可以省略.

a = '123456789' print(a[0:8])#只取到结束位置的前一个 #运行结果:12345678 print(a[0:8:2]) #运行结果:1357 print(a[::2]) # 默认从开头到最后一个 #运行结果:13579 print(a[:2]) #默认从第一个开始,取到第二个 #运行结果:12

④序列可相加、相乘

​ 相加:它会将两个序列进行连接,但不会去除重复的元素

print('我是' + '孜孜淑淑') print([1, 2, 3] + [3, 9, 10]) '''运行结果: 我是孜孜淑淑 [1, 2, 3, 3, 9, 10] '''

​ 相乘:使用数字 n 乘以一个序列会生成新的序列,其内容为原来序列被重复 n 次的结果

list = ['1'] * 5 print(list) #运行结果:['1', '1', '1', '1', '1']

⑤检查元素是否包含在数列中

​ Python 中,可以使用 in 关键字检查某元素是否为序列的成员,其语法格式为

​ value in sequence 其中,value 表示要检查的元素,sequence 表示指定的序列

和 in 关键字用法相同,但功能恰好相反的,还有 not in 关键字,它用来检查某个元素是否不包含在指定的序列中

str = '我是孜孜淑淑' print('我' in str) #True print('我' not in str) #False 优先掌握的操作 str1 = 'hello python!' # 1.按索引取值(正向取,反向取): # 1.1 正向取(从左往右) print(str1[6]) #p # 1.2 反向取(负号表示从右往左) print(str1[-4]) #h # 1.3 对于str来说,只能按照索引取值,不能改 str1[0]='H' # 报错TypeError # 2.切片(顾头不顾尾,步长) # 2.1 顾头不顾尾:取出索引为0到8的所有字符 print(str1[0:9]) #hello pyt # 2.2 步长:0:9:2,第三个参数2代表步长,会从0开始,每次累加一个2即可,所以会取出索引0、2、4、6、8的字符 print(str1[0:9:2]) #hlopt # 2.3 反向切片,将字符串倒叙 print(str1[::-1]) # -1表示从右往左依次取值 #!nohtyp olleh # 3.长度len # 3.1 获取字符串的长度,即字符的个数,但凡存在于引号内的都算作字符) print(len(str1)) # 空格也算字符 #13 # 4.成员运算 in 和 not in # 4.1 int:判断hello 是否在 str1里面 print('hello' in str1) #True # 4.2 not in:判断tony 是否不在 str1里面 print('tony' not in str1) #True # 5.strip移除字符串首尾指定的字符(默认移除空格) # 5.1 括号内不指定字符,默认移除首尾空白字符(空格、\n、\t) str1 = ' life is short! ' print(str1.strip()) #life is short! #5.2 只移除左边的空白字符 print(str1.lstrip()) #5.3 只移除右边的空白字符 print(str1.rstrip()) # 5.4 移除括号内指定字符,移除首尾指定的字符 str2 = '**tony**' print(str2.strip('*')) # tony # 6.切分split # 6.1 括号内不指定字符,默认以空格作为切分符号 str3='hello world' print(str3.split()) #['hello', 'world'] # 6.2 括号内指定分隔字符,则按照括号内指定的字符切割字符串 str4 = '127.0.0.1' print(str4.split('.')) #['127', '0', '0', '1'] # 注意:split切割得到的结果是列表数据类型 # 7.循环 str5 = '今天你好吗?' for line in str5: # 依次取出字符串中每一个字符 print(line) #8.转变大小写 #8.1将英文字符全部变成小写 print(str3.lower()) #8.2将英文字符全部变成大写 print(str3.upper()) #9.判断字符串是否以括号内指定的字符开头或结尾,结果为bool值Ture或者False #9.1 开头starswith() print(str3.starswith('t')) #Ture print(str3.starswith('j')) #False #9.2 结尾endswith() print(str3.endswith('jam')) #Ture print(str3.endswith('tony')) #False '''用法举例: 判断一份文件是否是照片 file_path = 'index.jpg' if print(file_path.endswith(jpg)): print('这是一张图片') ''' #10. 从可迭代对象中取出多个字符串,然后按照指定的分割符进行拼接,拼接的结果为字符串 print('%'.join('hello'))#从字符串'hello'中取出多个字符串,然后按照%作为分割符号进行拼接 # h%e%l%l%o print('|',join(['孜孜淑淑','喜欢','跑步'])) # 从列表中取出多个字符串,然后按照|作为分隔符号进行拼接 # 孜孜淑淑|喜欢|跑步 #11. 替换,用新字符替换就字符 str7 = '小荷才露尖尖角,早有蝴蝶立上头' str7 = str7.replace('蝴蝶', '蜻蜓') #语法:replace('旧的字符','新的字符') print(str7) #运行结果:小荷才露尖尖角,早有蜻蜓立上头 #12. 判断字符串是否是纯数字组成,返回结果为Ture或False str8 = '222223333' print(atr8,isdigit()) # Ture #生活场景:判断手机号码 int 和 string 类型的相关重点 for循环

​ break、continue、else

​ 本质:循环次数由可迭代对象的个数来控制;将可迭代对象的元素、字符,依次去赋值给变量x

数据类型详解

int():将其它类型转换为十进制的整型

float():转成小数

str():转成字符串

字符串的切片:

sname[start : end : step]

sname:表示序列的名称 start:表示切片的开始索引位置(包括该位置),此参数也可以不指定,会默认为 0,也就是从序列的开头进行切片 end:表示切片的结束索引位置(不包括该位置),如果不指定,则默认为序列的长度 step:表示在切片过程中,隔几个存储位置(包含当前位置)取一次元素,也就是说,如果 step 的值大于 1,则在进行切片去序列元素时,会“跳跃式”的取元素。如果省略设置 step 的值,则最后一个冒号就可以省略.

去除左右两边的指定符号

print(a.strip()):去除左右两边的空格

print(a.strip(’*’)):去除左右两边的指定字符

print(a.split(‘指定的字符’)):按照指定的字符去切割

print(len(a)):得到长度

print(‘1’ in ‘123’):判断是否包含

也就是从序列的开头进行切片

end:表示切片的结束索引位置(不包括该位置),如果不指定,则默认为序列的长度 step:表示在切片过程中,隔几个存储位置(包含当前位置)取一次元素,也就是说,如果 step 的值大于 1,则在进行切片去序列元素时,会“跳跃式”的取元素。如果省略设置 step 的值,则最后一个冒号就可以省略.

去除左右两边的指定符号

print(a.strip()):去除左右两边的空格

print(a.strip(’*’)):去除左右两边的指定字符

print(a.split(‘指定的字符’)):按照指定的字符去切割

print(len(a)):得到长度

print(‘1’ in ‘123’):判断是否包含

———————————————— 说明: 1.本专栏为自己跟着CSDN博主「老杨玩python」的【python之路】专栏的原创文章学习的学习笔记,其内容与CSDN博主「老杨玩python」的文章相似,大家可以自己点击原文链接查看。 专栏链接:https://blog.csdn.net/weixin_43079274/category_10836520.html?spm=1001.2014.3001.5482 2.学习笔记有问题欢迎大家在留言区留言或者私信我哦。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有