数据类型的基本使用

 

  都是一些数据类型的常规操作

  整形(int)

  浮点型(float)

  字符串(str)

  列表(list)

 数据类型的基本使用

  整型(int)

# 1.用途:存储手机号,身份证号,存QQ号等。。。
# 2.定义方式
age = 18  # age = int(18)
int('my name is Abraham')
int('1.1')  # int只能转纯数字的字符串,小数点都不行

#进制转换

 print(bin(12))  # 十进制转化为二进制
 print(oct(12))  # 十进制转化为八进制
 print(hex(16))  # 十进制转化为十六进制

 print(int('1101' ,2))  # 二进制转十进制
 print(int('10',8))  # 八进制转十进制
 print(int('99',16))  # 十六进制转十进制

  

  浮点型(float)

# 1.作用:工资,身高,体重的测量和存储
# 2.定义方式:
salary = 1.1  # salary = float(1.1)
res = float('1.11')
print(type(res))

  

  字符串(int)

# 1.作用:描述性的字符
# 2.定义方式
s = 'hello'  # s = str('hello')
s1 = str([1,2,3,4])
print(type(sl))
s2 = str({'name':'jason', 'password':123})
print(type(s2))
# 1、切片(顾头不顾尾,步长):从一个大的字符串中截取一段新的小字符串
s = 'hello big baby~'
# 左边的固定就是头,右边固定就是位  没有说按数字来分头尾
print(s[0:5])  
print(s[0:10:1])  # 步长不写默认是1
print(s[0:10:2])  # 步长表示隔几个取一个
# 负数取值
print(s[-1])
print(s[0:5:-2])  # 切片取值默认是从左往右的
print(s[5:0:-1])  
print(s[-1:-10:-1])
#2、长度len:统计的是字符串中字符的个数
 s1 = 'my name is Abraham '
 print(len(s1))
#3、去掉字符串左右两边的字符strip,不管中间的
 username = input('>>>:').strip()
 if username == 'jason':
     print('good job')
# strip()默认去除字符串首尾的空格
# 使用内置的方法统一采用 句点符(.)
 name1 = 'jason'
 name2 = '   jason   '.strip()
 print(name1 == name2)
 name3 = '$$$$$eg$on$$$$'
 print(name3.strip('$'))
# 了解即可
 name4 = '% ¥#jason&*)'
 print(name4.strip('% ¥#)'))
 rstrip() lstrip()
 name5 = '$$$$jason$$$$'
 print(name5.lstrip('$'))  # left左边
 print(name5.rstrip('$'))  # right右边
#4、切分split:针对按照某种分隔符组织的字符串,可以用split将其切分成列表,进而进行取值
 data = 'jaso n|123| handsome'
 print(data.split('|'))
 username,password,info = data.split('|')
 print(username,password,info)
# 强调:split切分出来的数据类型是一个列表
 print(data.split('o'))  # 切割的顺序其实从左往右的
 print(data.split('o',1))  # 切割的顺序其实从左往右的
 print(data.rsplit('o',1))  # 切割的顺序其实从左往右的
# 如果不指定那么split和rsplit效果是一样
#5、format的三种玩法(python推荐使用format做格式化输出)
# 第一种  按位置占位   跟%s原理一致
 str1 = 'my name is {} my age is {}'.format('jason',18)
 str1 = 'my name is {} my age is {}'.format(18,'jason',)
 print(str1)
# 第二种  按索引占位
 str1 = 'my {1} name is {0} my {0} age is {0}'.format('egon',18)
 print(str1)
# 第三种  指名道姓占位(关键字传参)
 str1 = 'my {name} name is {age} my {name} age is {name}'.format(name='jason',age=18)
 print(str1)
#6、split,rsplit
#7、join
 data = 'jason|123|handsome'
 res_list = data.split('|')
 print(res_list)

 res_str = '$'.join(res_list)  # 将容器类型中的多个元素通过指定字符拼接成一个字符串
 print(res_str)
 l = ['1','a','b']
 res = '|'.join(l)
 print(res)


#8、replace
 str = 'egon is dsb and egon is sb he has a BENZ'
 res = str.replace('egon','kevin',1)  # 将egon换成kevin,1是换的个数
 print(res)
 print(str)

  列表(list)

#作用:多个装备,多个爱好,多门课程,多个女朋友等

#定义:[]内可以有多个任意类型的值,逗号分隔
my_teacher=['alex','wupeiqi','yuanhao',4,5] #本质my_teacher=list([...])
#优先掌握的操作:
1、按索引存取值(正向存取+反向存取):即可存也可以取
 l = [1,2,3,4]
 print(l[0:4:1])
 print(l[0::])
 print(l[5::-1])
 print(id(l))
 l[0] = 69
 print(id(l))
 print(l)
#2、切片(顾头不顾尾,步长)
 l = [11,22,33,44,55]
 l1 = [99,88,77,66]
 [11,22,33,44,55,99,88,77,66]

# 1.尾部添加一个66
 l.append(66)  # 注意append值能将被添加的数据当作列表的一个元素
 print(l)

# 2.任意位置添加元素
 l.insert(2,96)  # 通过索引在任意位置添加元素
 print(l)  # 注意insert值能将被添加的数据当作列表的一个元素

# 3.添加容器类型数据
 l.append(l1)
 l.insert(-1,l1)
 l.extend(l1)  # 内部原理for循环l1一个个追加到列表的尾部
 l.extend([1,])
 print(l)

#3、长度
 print(len(l))
#4、成员运算in和not in
 print( 444 in l)
#5、往列表中添加元素(******)
 append
 insert
 extend

#6、删除
 print(l)
 del l[2]  # del适用于所有的删除操作
 print(l)

 res1 = l.pop()  # 尾部弹出
 res2 = l.pop()
 res3 = l.pop()
 print(res1,res2,res3)

 res1 = l.pop(0)  # 可以指定索引 按照索引弹出元素
 print(res1)

 res = l.remove(33)  # 指定要删除的元素的值
 print(l)
 print(res)

  

原文地址:https://www.cnblogs.com/AbrahamChen/p/11128881.html