python-基本数据类型

python的基本 数据类型

# 针对不同的数据使用不同的数据类型来保存
整型 浮点型 字符串 列表 字典 元组 集合 布尔

字符串(str)

	作用:用来记录人的名字,家庭住址,性别等描述性质的状态
	定义字符串:**加粗样式**
		方式1:
	    	name = 'kevin'  # 用的多
	     方式2
	    	name = "kevin"  # 用的多
	     方式3:
	    	name = '''kevin'''(当三引号左边有赋值符号和变量名的时候,它是字符串,否则为注释)
	     方式4:
	    	name = """kevin"""(当三引号左边有赋值符号和变量名的时候,它是字符串,否则为注释)
	ps: 字符串就是用引号引起来的部分
	    
	    # 使用这么多定义字符串的方式有什么好处没?
	    
	    res = '洋哥说:'趁年轻学技能养活自己''
	    res = '洋哥说:"趁年轻学技能养活自己"'
		print(res)
	    
	    '''当字符串中使用到多个引号的时候,单引号里面使用双引号,双引号里面使用单引号'''
	    
	    # 在pycharm 中,变量值的下面如果有不是红色的波浪线,就不是错误,那是不规范
	    # 变量值的下面如果是红色的波浪线,那就是错误,不允许发生
	    
	# 字符串它还可以进行拼接:使用+号
	s = 'hello'
	s1 = 'world'
	s2 = 'abc'
	print(s + s1 + s2)  # helloworld
	
	# 字符串重复
	print(s * 10)  # hellohellohellohellohellohellohellohellohellohello

列表(list)

	stu_names = ['kevin', 'jack', 'tank']
	定义:
		使用中括号括起来,里面可以存放多个元素值,元素与元素之间使用逗号隔开,元素可以是任意的数据类型
	    stu_names = ['kevin',1, 1.11]
	# 小练习
	names_list = ['kevin', 'jack', ['a', 'b', [1, 2, 'NB', ['AA', 'bb', 'LYNB']]]]
	
	# 把LYNB取出来:列表取值就是一层一层的取出来
	# 1. LYNB在大列表的第几个元素? 第三个
	l = names_list[2]
	# print(l)  # ['a', 'b', [1, 2, 'NB', ['AA', 'bb', 'LYNB']]]
	
	# 2. 问:LYNB在大列表的第几个元素?
	l1 = l[2]
	print(l1)  # [1, 2, 'NB', ['AA', 'bb', 'LYNB']]
	
	# 3. 问:LYNB在大列表的第几个元素?
	l2 = l1[3]
	print(l2)  # ['AA', 'bb', 'LYNB']
	
	# 4. 问:LYNB在大列表的第几个元素?
	l3 = l2[2]
	print(l3)  # LYNB
	
	# 5. 把以上4步合为一步
	l4 = names_list[2][2][3][2]
	print(l4)

在这里插入图片描述

字典(dict)

	# 现在让你使用一个变量保存:身高、姓名、年龄等信息
	l = ['kevin', 18, 1.8]  # 使用列表保存问题是含义不明确
	
	# 针对上述问题,我们可以使用字典来解决
	d = {'username': 'kevin', 'age': 18, 'height': 1.8}
	定义:
		用大括号括起来,内部存放多个元素值,元素与元素之间使用逗号隔开,但是,类型是K:V键值对的形式
	    K:key,  V:value
	    K: 就是对V的描述性信息,一般情况下都是字符串的形式
	    V:才是真正的数据值,类似于变量值,数据类型可以是任意的数据类型
	d = {'username': 'kevin', 'age': 18, 'height': 1.8}
	
	# 对字典取值?, 字典不支持索引取值!!!
	# print(d[0])
	
	# 字典通过k取值,冒号左边的
	print(d['username'])  # kevin
	print(d['age'])
	print(d['height'])  

# 小练习
	info = {
	    'username': 'kevin',
	    'addr': ['a', 'b', {'aa': 1, 'bb': 2, 'hobby': ['xijio', 'tangtou', 'hejiu', {'c': 1, 'd': 2, 'f': 'LYNB'}]}]
	}

# 把字典中的LYNB取出来
# 1. 问LYNB在大字典中的第几个元素?
	d1 = info['addr']  # ['a', 'b', {'aa': 1, 'bb': 2, 'hobby': ['xijio', 'tangtou', 'hejiu', {'c': 1, 'd': 2, 'f': 'LYNB'}]}]
	print(d1)

# 2. 问LYNB在列表中的第几个元素?
	d2 = d1[2] # {'aa': 1, 'bb': 2, 'hobby': ['xijio', 'tangtou', 'hejiu', {'c': 1, 'd': 2, 'f': 'LYNB'}]}
	print(d2)

# 3. 问LYNB在字典中的第几个元素?
	d3 = d2['hobby']  # ['xijio', 'tangtou', 'hejiu', {'c': 1, 'd': 2, 'f': 'LYNB'}]
	print(d3)

# 4. 问LYNB在列表中的第几个元素?
	d4 = d3[3]  # {'c': 1, 'd': 2, 'f': 'LYNB'}
	print(d4)

# 5. 问LYNB在字典中的第几个元素?
	d5 = d4['f']
	print(d5)
	
	# 把以上五步总结成一步的
	d6 = info['addr'][2]['hobby'][3]['f']
	print(d6)

布尔类型(bool)

	# 什么是布尔类型呢?就两种情况
	True		true	-----> 正确的   好的  可执行的   真
	False        false   -----> 错误的    不好的  不行的   假
	
	# 针对布尔类型的变量名,一般是使用is_开头
	is_right = True
	is_delete = True
	is_alive = False
	
	# 针对布尔类型,python的中的所有数据类型都可以转为布尔类型
	s = 'hello'
	
	# 在python中什么是真? 什么是假?
		'''什么是假?'''
	    # 记忆:
	    0, '', None, {}, [], ... 空的内容都是假的
	    # 其余都是真的
	
	# 数据类型的关键字
	
	# 扩展
	is_delete = True

元组(tuple)

	# 元组就是不可变的列表
	定义:
	t = (1, 2, 3, 4)
    # 就是小括号括起来,内部存放多个元素值,元素和元素之间使用逗号隔开,内部元素不支持修改
    t = (1, 2, 3, 4, ['a', 'b'])
    # t[0] = 666
    # print(t[0])  # 取值跟列表是一样的
    # print(t[4][0])
    t[4][0] = 'c'
    print(t)

集合(set)

	作用: 去重和运算无序
	定义:
		s = {1, 2, 3, 4}
	    # 用大括号括起来,内部存放多个元素值,元素和元素之间使用逗号隔开
	 d = {}
	print(type(d))  # <class 'dict'>
	
	l = []
	print(type(l))  # <class 'list'>
	
	s = set() # 定义空集合
	print(type(s))   

程序与用户交互

	# 在python中如何与用户进行交互
	input
	# 如何拿到用户输入的数据?
	'''input接收的数据,不管他是什么类型的,一律都是字符串的形式'''
	username = input('请开始你的输入:')  
	print(username, type(username))  # kevin
	
	
	# 输出
	print
	a = 1
	b = 2
	c = 3
	# print(a, b, c)
	print(a, end='')
	print(b, end='')
	print(c)
	
	# 换行符\n
	# \r\n  \r\n  \r\n  \n
	# \n

格式化输出

1. 什么是格式化输出?
	# 把一段字符串里面的某些内容替换掉之后再输出,就是格式化输出
2. 为什么要格式化输出?
	res='亲爱的xxx你好!你xxx月的话费是xxx,余额是xxx'
    
    res='亲爱的zhangsan你好!你1月的话费是10000,余额是10000000'
    res='亲爱的lisi你好!你2月的话费是20000,余额是20000000'
    ...
 3. 如何格式化输出?
	%s  %d
    # 占位符:先占个位置
	# res = '亲爱的%s你好!你%s月的话费是%s,余额是%s'
	
	'''位置个数必须一一对应,多一个不行,少一个也不行'''
	# print(res % ('zhangsan', 1, 999, 1000))  # 亲爱的zhangsan你好!你1月的话费是999,余额是1000
	# print(res % ('zhangsan', 1, 999))  # 亲爱的zhangsan你好!你1月的话费是999,余额是1000
	# print(res % ('zhangsan', 1, 999, 1000, 999))  # 亲爱的zhangsan你好!你1月的话费是999,余额是1000
	
	# res = '亲爱的%s你好!你%s月的话费是%s,余额是%s' % ('zhangsan', 1, 999, 1000)
	# print(res)
	# res = '亲爱的%s你好!'
	# print(res % 'kevin') # 当只有一个占位符的时候,%后面的小括号可以不写,直接写元素值
	
	
	# %d:只能跟整型占位
	# %s:可以跟任意的数据类型占位
	
	# res = '亲爱的%s你好!你%s月的话费是%s,余额是%d'
	# print(res % ('zhangsan', 1, 999, '999'))
	
	print('%08d' % 111)
	print('%08d' % 9)
	print('%08d' % 99999999999)

在这里插入图片描述

基本运算符

1. 算术运算符
 + - * /   % ** // 
2. 比较运算符
	== != > < >= <=
3. 赋值运算符 =
4. 增量赋值
# 增量赋值
	n = 666
	n = n + 1  # n += 100
	n = n - 1  # n -= 1
	n = n * 1  # n *= 1
	n = n / 1  # n /= 1
	print(n)  # 667
5. 链式赋值
	x = 10
	y = 10
	z = 10
	print(x, y ,z)
	
	x = y = z = 10
	print(x, y, z)
6. 交叉赋值
	# 交换m,n的值
	# m = n
	# n = m
	# print(m, n)
	# 借助于第三个变量
	# temp = m
	# m = n
	# n = temp
	# print(m, n)
	
	m, n = n, m
	print(m, n)

7. 解压赋值

	# l, l1, l2, l3 = names_list
	# l, l1, l2, l3 = ['kevin', 'jack', 'rose', 'tank', ]
	# print(l, l1, l2, l3)
	
	# l, *_, l3 = ['kevin', 'jack', 'rose', 'tank', ]
	#
	# print(l)
	# print(l3)
	# '''
	#     *后面的变量名结束多余的变量值,并且组装成列表的形式返回
	# '''
	# print(_)  # ['jack', 'rose']
	
	# l, *_, last = ['kevin', 'jack', 'rose', 'tank', ]
	# print(last)

8. 逻辑运算符
	and:与,连接两个条件,它的结果两边必须都是真,结果才是真
        	>>>: 2 > 1 and 1 != 1 and True and 3 > 2
            False
            
    or:或,连接的两个条件,只要有一个是真,结果就是真
    		>>>:2 > 1 or 1 != 1 or True or 3 > 2
             True
            
    not:非,取反
    	    >>>:  (3>4 and 4>3) or (1==3 and 'x' == 'x') or 3 >3
    True 
    not True--->False
    # 优先级not>and>or
    

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值