变量,运算符,数据类型与条件语句
1.1变量
变量的值是可以变化的,在Python中,不需要事先声明的变量名和变量类型,直接赋值即可以创建任意类型的对象变量。不仅变量的值是可以变化的,变量的类型也是可以随时变化的。
例如,下面第一条语句创建的整型变量x,并赋值3.``
x=3
print(type(x))
输出结果如下:
Python中的变量并不直接存储值,而是存储了值得内存地址或者引用,这也是变量类型随时可以改变的原因。如果变量出现在赋值运算符或复合运算符的左边创建变量或修改变量的值,否则表示引用该变量的值,这一点同样适用于使用下标来访问列表,字典等可以改变序列及自定义对象中的元素,列入:
x=3
print(x**2)
x+=6
x=[1,2,3]
x[1]=5
print(x)
print(x[2])
输出结果如下:
在python中定义变量名需要注意以下问题:
1.变量名必须以下划线或字母开头
2.变量名中不能有空格和标点符号
3.不能使用关键字作为变量名
4.不建议使用系统内置的模块名,类型名或函数名以及导入的模块名及其成员名作为变量名,这会改变其类型和含义,导致其它代码无法执行。
5.变量名对英文名的大小写敏感,如student和Student是不同的变量
1.2运算符
python中的运算符有以下几种:算数运算符,关系运算符,逻辑运算符及位运算符,还有一些特殊的运算符,如成员测试运算符,集合运算符,同一性运算符等。圆括号是明确和改变表达式运算顺序的利器,在适当的位置使用圆括号可以使得表达式的含义更加明确。
运算符 | 功能说明 |
---|---|
+ | 算数加法,列表,元组,字符串合并与连接,正号 |
- | 算数减法,集合差集,相反数 |
* | 算数乘法,序列重复 |
/ | 真除法 |
// | 求整商,如果操作数中有实数,结果为实数为整数形式的整数 |
% | 求余数,字符串格式化 |
** | 幂运算 |
<,<=,>,>=,==,!= | 大小比较,集合的包含关系比较 |
or | 逻辑或 |
and | 逻辑与 |
not | 逻辑非 |
in | 成员测试 |
is | 对象同一测试,及测试石佛为同一个对象或内存地址是否相同 |
^,&,<<,>>,~ | 位或,位异或,位与,左位移,右位移,位求反 |
&,^ | 集合交集,并集,对称差集 |
@ | 矩阵相乘运算符 |
1.3数据类型
在Python中有以下几种数据类型:
名称 | 数据类型 |
---|---|
整型 | int |
浮点型 | float |
布尔型 | bool |
复数型 | complex |
字符串型 | str |
列表型 | list |
元组型 | tuple |
字典型 | dict |
实例如下:
n=3
print(type(3))
n=3.1
print(type(n))
n=(1==2)
print(type(n))
n=3+3j
print(type(n))
n='abc'
print(type(n))
n=[1,2]
print(type(n))
n=(1,2)
print(type(n))
n={1:'name'}
print(type(n))
输出结果为:
1.4条件语句
1.4 选择结构
1.4.1 单分支选择结构
语法结构如下:
if 表达式:
语句块
实例如下:
x=input('Input two number')
a,b=map(int,x.split())
if a>b:
a,b=b,a
print(a,b)
1.4.2双分支结构
语法如下:
if表达式:
语句1
else:
语句2
实例如下:
n=int(input('请输入n:'))
m=int(input('请输入m:'))
if n>m:
print(n)
else:
print(m)
1.5循环结构
语法如下:
while 条件表达式:
循环体
[else:
else 子代码块]
和
for取值in序列或迭代对象:
循环体
[else:
else 子代码块]
实例如下:
#for循环
s=0
for i in range(10):
s+=i
else:
print(s)
#while循环
s=i=0
while i<=100:
s+=i
i+=1
else:
print(s)