在程序设计中, 变量是一种存储数据的载体. 计算机中的变量是实际存在的数据或者说是存储器中存储数据的一块内存空间, 变量的值可以被读取和修改, 这是所有计算和控制的基础. 计算机能处理的数据有很多中类型, 除了数值之外还可以处理文本, 图形, 音频, 视频等各种各样的数据, 那么不同的数据就需要定义不同的存储类型. Python 中的数据类型很多, 而且也允许我们自定义新的数据类型, 我们先介绍几种常用的数据类型.
变量和类型
整型
Python 中可以处理任意大小的整数 (Python 2.x 中有 int 和 long 两种类型的整数, 但这种区分对 Python 来说意义不大, 因此在 Python 3.x 中整数只有 int 这一种了), 而且支持二进制(如 0b100, 换算成十进制是 4), 八进制(如 0o100, 换算成十进制是 64), 十进制(100) 和十六进制 (0x100, 换算成十进制是 256) 的表示法.
浮点型
浮点数也就是小数, 之所以称为浮点数, 是因为按照科学记数法表示时, 一个浮点数的小数点位置是可变的, 浮点数除了数学写法 (如 123.456) 之外还支持科学计数法(如 1.23456e2).
字符串型
字符串是以单引号或双引号括起来的任意文本, 比如'hello'和 "hello", 字符串还有原始字符串表示法, 字节字符串表示法, Unicode 字符串表示法, 而且可以书写成多行的形式(用三个单引号或三个双引号开头, 三个单引号或三个双引号结尾).
布尔型
布尔值只有 True,False 两种值, 要么是 True, 要么是 False, 在 Python 中, 可以直接用 True,False 表示布尔值(请注意大小写), 也可以通过布尔运算计算出来(例如 3 < 5 会产生布尔值 True, 而 2 == 1 会产生布尔值 False).
复数型
形如 3+5j, 跟数学上的复数表示一样, 唯一不同的是虚部的 i 换成了 j.
变量命名
对于每个变量我们需要给它取一个名字, 就如同我们每个人都有属于自己的响亮的名字一样. 在 Python 中, 变量命名需要遵循以下这些必须遵守硬性规则和强烈建议遵守的非硬性规则.
硬性规则:
变量名由字母(广义的 Unicode 字符, 不包括特殊字符), 数字和下划线构成, 数字不能开头.
大小写敏感(大写的 a 和小写的 A 是两个不同的变量).
不要跟关键字 (有特殊含义的单词) 和系统保留字 (如函数, 模块等的名字) 冲突.
PEP 8 要求:
用小写字母拼写, 多个单词用下划线连接.
受保护的实例属性用单个下划线开头.
私有的实例属性用两个下划线开头.
变量类型进行转换
int(): 将一个数值或字符串转换成整数, 可以指定进制.
float(): 将一个字符串转换成浮点数.
str(): 将指定的对象转换成字符串形式, 可以指定编码.
chr(): 将整数转换成该编码对应的字符串(一个字符).
ord(): 将字符串 (一个字符) 转换成对应的编码(整数).
运算符
运算符 | 描述 |
---|---|
[] [:] | 下标,切片 |
** | 指数 |
~ + - | 按位取反, 正负号 |
* / % // | 乘,除,模,整除 |
+ - | 加,减 |
>> << | 右移,左移 |
& | 按位与 |
<= < > >= | 小于等于,小于,大于,大于等于 |
== != | 等于,不等于 |
is is not | 身份运算符 |
in not in | 成员运算符 |
巩固练习
练习 1: 华氏温度转摄氏温度.
- # 摄氏温标 (C) 和华氏温标 (F) 之间的换算关系为:
- #F=C*1.8+32
- f=float(input("请输入华氏温度:"))
- c=(f-32)/1.8
- print('%.1f 华氏温度 =%.1f 摄氏度' %(f,c))
练习 2: 输入圆的半径计算计算周长和面积.
- import math
- radius=float(input("请输入园的半径:"))
- perimeter=2*math.pi*radius
- area=math.pi*radius*radius
- print("周长:%.2f" %perimeter)
- print("面积:%.2f" %area)
练习 3: 输入年份判断是不是闰年.
- year=int(input("请输入年份:"))
- if (year % 4== 0) and (year % 400 == 0) or year % 100 !=0:
- print("{}是闰年" .format(year))
- else:
- print ("{}是平年" .format(year))
来源: http://www.jianshu.com/p/c457b6e72f1a