前言
- python变量的定义,相比较于java,是不同的,变的非常简单。
- 命名规则和规范没有改变,都一样。
- 数据类型确实改变了,需要重点关注
- 运算符增加了 **(幂) 和 //(取整除)
一、变量
1. python变量的定义
python的变量定义十分简单,直接是 变量名 = 所赋值的数据
即可。肯定会有疑问,那么该变量的数据类型是什么呀,以下给出解答。
- 程序中用变量来存储数据,python是一门强类型的语言。
- 赋值变量时不需要指定数据类型
给这个变量赋值什么数据类型,该变量就是什么类型
例如:
2. 命名规则和规范
- 命名规则
- 变量必须以字母(a - z,A - Z)或下划线(_)开头
- 其他字符可以是字母,数字或 _
- 变量区分大小写
- Python关键字不能用作变量名。
- 命名规范
- 变量必须以字母(a - z,A - Z)或下划线(_)开头
- 其他字符可以是字母,数字或 _
- 变量区分大小写
- Python关键字不能用作变量名。
- 查看Python关键字:
dir(__builtins__)
二、数据类型
1. 八个基本数据类型
先直接上个图,一目了然
注意 python3版本中 没有 long 数据类型了,都归为int 类型了。
我们知道数据类型有这么多,怎么样才能知道变量是一个什么数据类型呢?
Python提供了 type()
方法查看变量的类型。
以后都使用pycharm 编译器进行编译测试
2. 测试一下
上代码
'''
python的基本数据类型
1、数字 num :包括五个
a、 int(有符号整数)
b、 long(长整形)(python 3 取消,都用int 代替)
c、 float(浮点型)
d、 complex(复数)
e、 布尔值(bool): True False
2、字符串 str
3、字典 dict
4、元组 tuple
5、列表 list
'''
# 数字 int
a = 10;
print(type(a))
# 数字 float
a = 12.67;
print(type(a))
# 数字 complex
a = 2.4 + 5j;
print(type(a))
# 数字 bool
a = True;
print(type(a))
# 字符串
a = '冯凡利';
print(type(a))
print('--------高级类型----------')
# 字典类型 dict
b = {}
print(type(b))
# 元组类型 tuple
b = ()
print(type(b))
# 列表类型 list
b = []
print(type(b))
运行输出
一 一对应即可啦。
三、基本运算符
1.七个算数运算符
- python 共有六个运算符,分别为:
- 加 a+b
- 减 a-b
- 乘 a*b
- 除 a/b
- 取模 a%b - 返回除法的余数
- 幂 a**b - 返回a的b次方
- 取整除 a//b - 返回商的整数部分(向下取整)
- 代码测试如下
'''
算数运算符包括
+ - * / % **(求指数) //(求商)
'''
a = 7
b = 3
c = 10
print('a+b*c=',a+b*c)
print('a-b=',a-b)
print('a*b=',a*b)
print('a/b=',a/b)
print('a%b=',a%b)
print('a**b=',a**b) # 7*7*7
print('a//b',a//b) # 取整数 类似于 java 的 / (除)
- 测试结果
2. 六个比较运算符
- python 共有六个比较运算符.
直接上图 - 代码测试:
# == != > < >= <= 6个比较运算符
a, b = 10, 5
print('a == b:', a == b)
print('a != b:', a != b)
print('a > b:', a > b)
print('a < b:', a < b)
print('a >= b:', a >= b)
print('a <= b:', a <= b)
- 输出结果
3. 三个逻辑运算符
- python 共有3个比较运算符.
直接上图 - 代码测试
# 逻辑运算符 and or not
# and 逻辑运算符 条件比较严格,全true 才为 true
# 定义四个变量
a, b, c, d = 23, 18, 10, 3
print(a + b > c and c < d) # false
print(c > d and a > b) # true
# or 逻辑运算符 全 false 才为 false
print('-----------or--------------')
print(a<b or b>d)# true
print(a<b or b<d)# false
# not 逻辑运算符 全 false 才为 false
print('-----------not--------------')
print(not a>b) # false
print(not a<b ) # true
# 优先级
print('-----------priority--------------')
# () > not > and > or
print(2>1 and 1<4 or 2<3 and 9>6 or 2<4 and 3<2)
- 输出结果
一 一对应即可
4. 八个赋值运算符
- python 共有8个比较运算符.
直接上图 - 代码测试
# 赋值运算 算数运算的补充
# += -= *= /= %= **=
# 定义四个变量
a, b, c, d = 23, 18, 10, 3
# a += b
# print('a += b:', a) # 41
# a -= b
# print('a -= b:', a) # 5
# a *= b
# print('a *= b:', a) # 414
# a /= b
# print('a /= b:', a) # 1.2777777777777777
# a %= b
# print('a %= b:', a) # 5
# a **= b
# print('a **= b:', a) # 3244150909895248285300369
a //= b
print('a //= b:', a) # 1
- 结果输出
每执行一次 都要注释掉。因为会覆盖掉原来的值
结果都在后面的注释中
四、格式化输出与输入
1. 格式化输出
输出很简单 直接使用print()函数即可。
- 输出方式一:
%占位符
因为要对输出的数据进行格式化,便要使用占位符 %
# 输出 % 占位符 \n换行效果
print('--------------输出方式一:%占位符---------------')
me = '我的'
classPro = '清华附中一年级3班'
age = 7
print('%s名字是小明:来自【%s】, 今年%d 岁了' % (me, classPro, age))
print('%s名字是胖虎:来自【%s】, 今年%d 岁了' % (me, classPro, age))
print('%s名字是小叮当:来自【%s】, 今年%d 岁了' % (me, classPro, age))
print('我可以\n换行吗') # \n换行效果
print()
print('练习输出')
'''
练习输出
姓名:老夫子
QQ:666666
手机号: 17862970812
公司地址: 山东省济宁市
'''
name = '老夫子'
QQ = '666666'
phone = '17862970812'
addr = '山东省济宁市'
print('姓名:%s \nQQ:%s \n手机号:%s \n公司地址:%s'%(name, QQ, phone, addr))
截图输出
- 输出方式二:
format()
直接上代码
# 使用上面的数据
print('--------------输出方式二:.format()---------------')
print('姓名:{} \nQQ:{} \n手机号:{} \n公司地址:{}'.format(name, QQ, phone, addr))
截图
- 常用的格式化符号,其中最常用的 %s, %d, %f。
2. 输入
直接调用print()函数即可。
直接上代码。
print('--------------输入方式---------------')
# input的练习 获取键盘输入的内容
nameInput=input("请输入您的姓名:")
ageInput=int(input("请输入您的年龄:"))
print(type(nameInput))
QQInput=input('请输入您的qq')
phoneInput=input("请输入您的电话:")
addrInput=input("请输入您的地址:")
print('姓名:%s 年龄是:%d 岁'%(nameInput,ageInput))
# print('姓名:{} 年龄是:{} 岁'.format(name,age))
print('QQ:{}'.format(QQInput))
print('手机号:{}'.format(phoneInput))
print('地址:{}'.format(addrInput))
截图