目录
一、python数据类型
1、布尔值bool
1、用来判断事物的对错,是否可行
True --->:对的,可行的,同时可用数字'1'表示
Fales--->:错误的,不可行,同时可用数字'0'表示
2、在评估事物对错、比较事物大小时会返回对或错、是否可行
代码表现:
eg1:>>>:print(3>4)
Fales
eg2:>>>:name_stud = ('kangkang', 'xiaoli', 'xiaozhang')
>>>: print('kangkang'in name_stud)
ture
3、Python中所有数据本身都带有布尔值
表示为False的值:0, None, {}, (), ''
表示为True的值 :除上述几种,其余均为True
4、储存布尔值的变量名一般推荐使用is开头
代码表现:
is_correct = True
is_error = Fales
2、元组tuple
1、元组是有序且不可更改的集合,也被称之为不可变的列表。在 Python 中,元组是用圆括号编写的。
2、小括号内部存放多个数据值,数据与数据之间用逗号隔开,数据可以是任何类型
代码表现:
thins_is_tuple = ('kangkang', 18 ,65.5, ['安徽', '上海'])
3、元组与列表对比
列表list | 元组tuple | |
---|---|---|
表现形式 | 中括号,内部数据值逗号隔开,数据值可以是任意类型 | 小括号,内部数字逗号隔开,数据值可以是任意类型 |
特点 | 可以索引取值,可修改括号内数据值 | 可以索引取值,不可修改内部数据值 |
3、元组内若只有一个数据值,则建议数据值后需要加逗号,若不加逗号则会被判定为数据值本身类型
3、集合set
1、集合是无序和无索引的集合。在 Python 中,集合用花括号编写。
2、大括号内存放多个数据值,数据值可以是任何类型
代码表现:
thins_is_set = {1, 11.1, 'kangkang', '安徽'}
3、集合与字典对比
字典dict | 集合set | |
---|---|---|
表现形式 | 大括号,内部数据值逗号隔开,数据值可以是任意类型,数据是k:v键值对 | 大括号,内部数字逗号隔开,数据值可以是任意类型,数据不是k:v键值对 |
特点 | 以K取值,可修V数据值 | 无序,无索引,括号内值不可修改,可以解压赋值 |
二、与用户交互
与用户交互是指在日常生活中我们去银行取钱,当我们坐在柜台,收银小姐姐问我们需要办理什么业务时,我们告诉她我们的需求,这个过程就是在与用户交互
1、获取用户输入
input()----->:括号内获取用户输入
代码表现:
ussr_name = input('请输入您的用户名:')
"""
1.先执行input获取用户输入
2.将输入的数据绑定给变量名username
3.以后在程序中就可以使用变量名反复调用用户数据
"""
ps:input收到的数据会自动转成字符串
2、输出内部信息
print()----->:括号内输入内部信息
代码表现:
print()
1、括号内可以是任意类型数据,并且可放多个数据,需逗号 隔开
prin('康康',1, 1.2)
2.print自带换行符
换行符:
\r\n
\n(斜杠与字母组合到一起可能会产生特殊的含义)
print('康康\n', 1, 1.2)
3.print也可以切换结束符
print(数据,end='默认是\n')
3、语言环境差异
1、python2与python3中两个关键字的区别
python2与python3中两个关键字的区别
1、python2中
input方法需要用户自己提前指定数据类型 写什么类型就是什么类型
raw_input方法与python3中input一致,输入的统一处理成字符串
2、python2中
print方法有两种使用方式
print 数据值
print(数据值)
三、格式化输入
格式化输入就是指在一段提前拟定好的文档中,有一些数据暂时无法提供,这个时候就会用到格式化输出,也就是占位符,将占位符填充至无法提供的数据处,以便在将来需要填充时能够方便、快捷的进行局部修改
1、代码实现
占位符:%s (可以填充任何数据类型)
%d(只可以填充数字)
info = '%s先生您好,您本月话费消费%d元,余额为%d元'
print(info % ('康', 100, 50))
2、注意事项
1、有几个占位符就要填几个数据,不可多填或少填
2、占位符后填入数字来控制这段数字的位数
info = '%s先生您好,您本月话费消费%08d元,余额为%08d元'
%08d,%后08可以控制占位符位数
四、基本运算符
1、数学运算符
含义 | 常规表现方式 | 简化表现方式 | |
---|---|---|---|
+ | 加 | x = x + 10 | x +=10 |
- | 减 | x = x - 10 | x -=10 |
* | 乘 | x = x * 10 | x *=10 |
/ | 除 | x = n / 10 | x /=10 |
% | 取余 | x = n % 10 | x %=10 |
// | 整除 | x = n / / 10 | x //=10 |
** | 次方 | x = n ** 10 | x **=10 |
2、比较运算符
含义 | 表现方式 | |
---|---|---|
> | 大于 | 3 > 1 |
< | 小于 | 1 < 3 |
>= | 大于等于 | x >= 3 |
<= | 小于等于 | x <= 3 |
== | 等于 | 3 = 3 |
!= | 不等于 | x != 3 |
五、常用赋值符号
1、链式赋值
1、语法表现
寻常表现方式:
number1 = 10
number2 = 10
number3 =10
链式赋值方式:
number1 = number2 = numbe3 = 10
2、交叉赋值
1、语法表现
a = 10
b = 20
寻常表现方式:
c = 10
a = b
b = c
交叉赋值表现方式:
a , b = b , a
3、解压赋值
1、语法表现
student_nanme = ['康', '章', '张', '王']
寻常表现方式:
class1 = student_nanme[0]
class2 = student_nanme[1]
class3 = student_nanme[2]
class4 = student_nanme[3]
解压赋值表现方式:
class1, class2, class3, class4 = student_nanme
'''解压赋值在使用的时候 正常情况下需要保证左边的变量名与右边的数据值个数一致'''
2、多数据赋值方式
1、在多个数据需要解压赋值时,但我们只需要列表中的其中一部分数值时,这个时候我们可以打破上述规则使用*号来接收不需要部分的数据值
student_nanme = ['康', '章', '张', '王']
表现方式:(取前部分值)
class1, class2, *class3 = student_nanme
表现方式:(取后部分值)
*class1, class2, class3 = student_nanme
1、 *号会接受多余部分数据值
2、当数据值不准备需要的时候,我们可以使用下滑线作为变量名绑定
六、逻辑运算符
逻辑运算符是python用来进行逻辑判断的运算符,有and,or,not三种
1、and 与
and运算符的功能:假设x,y为两个表达式,x and y表示当x,y两个表达式都为真是,运算的结果为真,and可以直观的理解成并且的意思。
1、and两边都为表达式
print(5>4 and 5>6)
若and两边都通过则显示:true(通过),反之则显示false(错误)。
2、and一边为变量名,另一边为表达式
a = 20
print(a an 30>20)
运行结果为:true
print(a an 30<20)
运行结果为:False
3、and两边都为变量名
a = 20
b = 30
print(a and b)
运行结果为:30
print(b and a)
运行结果为:20
当and两边都为变量时,系统则判定为:ture(通过),若and右边不为表达式,而是变量名时,系统则会返回and右边的数据值,反之若有一个值为假系统则返回一个假的值(false)
2、or 或
or运算符的功能:or连接的多个条件只要有一个成立,结果就成立。
print(30>20 or 30<35 or 15 or 20)
如果条件中全部由or组成,那么判断起来非常的简单,只要发现一个成立 结果就为通过(true)。 若显示为Ture的数不为表达式,则会显示这个数的数据值
3、not 取反
not运算符的功能:取反,类似于说反话。
1、三者混合使用的时候有优先级之分,但是我们不需要记忆优先级,应该通过代码的形式提前规定好优先级
eg: 先乘除有加减 但是可以使用括号来改变优先级
(3>4 and 4>3) or ((1==3 and 'x' == 'x') or 3 >3)、2、若无括号时,()>not>and>or
七、成员运算符
简单的说就是用来识别某一元素是否包含在变量中,这个变量可以是字符串、列表、元组。
1、in和not in
name_list = ['jason', 'kevin', 'oscar', 'jerry']
print('tony' in name_list)
显示结果为:False
print('tony' not in name_list)
显示结果为:True
print('j' in name_list)
显示结果为:False
列表最小单位是数据值 不能再细分
运算符 | 功能 |
---|---|
in | 是否包含某元素,输出为TRUE或FALSE |
not in | 是否不包含某元素,输出为TRUE或FALSE |
八、身份运算符
身份运算符是python用来判断的两个对象的存储单元和数据值是否相同的一种运算符
1、is和==
a1 = [11, 22, 33, 44, 55, 66, 77, 88]
a2 = [11, 22, 33, 44, 55, 66, 77, 88]
print(11 is a1) #验证身份(数据值)结果为true
print(id(a1) == id(a2)) #验证地址结果为False
1、地址相同,数据值一定相同
2、数据值相同,地址不一定相同
九、练习题
1.获取用户输入并打印成下列格式
------------ info of Jason -----------
Name : Jason
Age : 18
Sex : male
Job : Teacher
---------------- end -----------------
答:
Name = input('请输入您的用户名:')
Age = input('请输入您的年龄:')
Sex = input('请输入您的性别:')
Job = input('请输入您的职业:')
a1 = (' ------------ info of %s -----------\n',
'Name:%s\n',
'Age:%s\n',
'Sex:%s\n',
'Job:%s\n',
'---------------- end ----------------- ')
print(a1[0] % Name,
a1[1] % Name,
a1[2] % Age,
a1[3] % Sex,
a1[4] % Job,
'---------------- end ----------------- ')
2.准备说出下列变量名v绑定的结果
v1 = 1 or 3
答:print(v1)---->:1
v2 = 1 and 3
答:print(v2)----->:3
v3 = 0 and 2 and 1
答:prnt(v3)---->:1
v4 = 0 and 2 or 1
答:print(v4)---->:2
v5 = 0 and 2 or 1 or 4
答:print(v5)---->:2
v6 = 0 or False and 1
答:print(v6)---->:False