Python学习路程——Day04
1、基本数据类型之布尔值bool
布尔值(bool)是用来判断条件是否对错的数据类型,只有两个值(True、False)
Python基本的数据都内置了一个bool值
默认为False的一些值:0、None、空字符串、空集合、空字典等
布尔值的命名规则:is_delete、is_alive
示例:
is_delete = True
is_alive = False
print(is_delete,is_alive)
2、基本数据类型之元组tuple
元组是不可变的python对象序列。
语法结构:变量名 = (各种数据类型,各种数据类型)
tup = (123,'Jason',13.14)
print(tup)
'''
输出结果:
(123, 'Jason', 13.14)
'''
元组与列表的区别:
元组的序列就像列表。唯一的区别是,元组不能被改变,即元组是不可被修改。元组使用小括号,而列表使用方括号。
3、基本数据类型之集合set
集合(set)和字典(dict)一样,也是无序的序列,但是需要注意的是,集合中的元素是不重复的。你可以将Python中的集合和数学概念上的“集合”进行类比,Python中的集合具有数学中“集合”的无序性和互异性。
集合(set)也是将所有元素放到一个大括号中 { } ,集合中的元素与元素之间用逗号 , 隔开;集合也要赋给一个变量。其格式如下:set_name = {元素1,元素2,元素3,元素4,元素5};集合中的元素数量没有限制,但是元素的数据类型必须是不可变的数据类型,如整型;浮点型;字符串;元组。不能在集合中存储列表,字典,集合这些可变的数据类型。
可以直接以集合的表现形式来创建一个集合,或者通过 set()函数将字符串、列表、元组、range对象等转换为集合。
示例:
'''
直接以集合的表现形式来创建集合:
'''
set_1 = {1,2,3,4,5}
'''
通过set()函数将字符串、列表、元组、range等转换为集合
注意:集合是无序的!无序的!无序的!
故set()方法转换的字符串,每次输出的结果都是不确定的,随机的
'''
talking = '寄蜉蝣于天地,渺沧海之一粟'
set_2 = set(talking)
print(set_1)
print(set_2)
4、用户交互
用户交互就是人对计算机进行数据的输入,计算机给人输出结果。
输入:input()
输出:print()
示例:
'''
需求:
获取用户输入并打印成下列格式
------------ info of Jason -----------
Name : Jason
Age : 18
Sex : male
Job : Teacher
---------------- end -----------------
'''
name = input('请输入您的名字:')
age = input('请输入您的年龄:')
sex = input('请输入您的性别:')
job = input('请输入您的职业:')
print('------------ info of Jason -----------')
print(' Name:', name)
print(' Age:', age)
print(' Sex:', sex)
print(' Job:', job)
print('---------------- end -----------------')
5、格式化输出
格式化输出就是提前定义好一些内容,将来需要使用的可以进行局部的修改。
实现的主要方法是通过占位符占位,然后通过%来实现。
占位符主要使用两种:
%s:可以替任何数据进行占位
%d:只能替整型数据进行占位
%08d:总共8位的整数占位符,不够8位的前面补0,够的有多少显示多少。
示例:
# 单个占位符
info_user = '亲爱的用户:%s,你好'
print(info_user % 'jason')
print(info_user %('jason',) )
print('亲爱的用户:%s,你好' %(‘Tony’,))
print('亲爱的用户:%s,你好' %‘Tony')
# 多个占位符
desc = '姓名:%s、年龄:%s、性别:%s'
print(desc % ('jason',18,'male'))
print('姓名:%s、年龄:%s、性别:%s'%('Tony',28,male))
'''
有几个占位符就要有几个数据
'''
6、基本运算符
数学运算符:
'''
+ - * / // % **
简化写法如下:
'''
m = 7
m += 2
m -= 2
m *= 2
m /= 2
m //= 2
m %= 2
m **= 2
比较运算符::
'''
< > <= >= == !=
==用来检验数据值是否相同
'''
7、常用赋值符
链式赋值:
'''
给多个变量名赋同一个值
'''
a = b = c = 888
交叉赋值:
'''
让两个或多个变量的数据值经行交换
'''
m = 3
n = 6
q = 8
m,n,q = q,m,n
解压赋值:
'''
任何的序列(或者是可迭代对象)可以通过一个简单的赋值语句解压并赋值给多个变量。唯一的前提就是变量的数量必须跟序列元素的数量是一样的。这种解压赋值可以用在任何可迭代对象上面,而不仅仅是列表或者元组。包括字符串,文件对象,迭代器和生成器。
'''
lst = ['Jason', 'Tony', 'tom', 'Jack']
name1, name2, name3, name4 = lst
print(name1, name2, name3, name4)
name1, *_, name4 = lst
print(name1, *_, name4)
name1, name2, *_ = lst
print(name1, name2, *_)
8、逻辑运算符
表示逻辑的运算符,主要配合各种条件一起使用。
连接多个条件,必须全部成立,才成立。(and)
连接多个条件,一个成立,则成立。(or)
连接多个条件,!True则False,!False则True。(not)
'''
注意:三种混合使用的时候有优先级:not > and > or
正常情况下,混合使用的时候就用括号分好优先级
'''
print(1 < 2 and 2 < 3 and 3 < 4)
print(1 > 2 or 2<3 or 3<4)
T = not False
print(T)
v1 = 1 or 3 # 1
v2 = 1 and 3 # 3
v3 = 0 and 2 and 1 # 0
v4 = 0 and 2 or 1 # 1
v5 = 0 and 2 or 1 or 4 # 1
v6 = 0 or False and 1 # False
9、成员运算符
判断个体在不在群体内(in)
lst = [1,2,3,4,5,6,7,8]
print(1 in lst)
print(9 not in lst)
10、身份运算符
判断内存地址是否相同(is)
Python会对较小的数进行内存优化。
a = 1234567890987654321
b = 1234567890987654321
print(a is b)
'''
输出结果为True
因为Pycharm对内存进行了优化,他们的内存地址是一样的
数据量很小,很简单的,做了内存优化,麻烦的,大的就不行,列表就不行
'''
标签:set,路程,Python,数据类型,Day04,集合,占位,print,元组
From: https://www.cnblogs.com/HaiMan/p/16731762.html