常量与变量
在python中,不需要事先声明变量名及其类型,直接赋值即可创建任意类型的变量,不仅变量的值是可以变化的,变量的类型也是随时可以发生改变的。
例如:
上面第一条语句创建了整型变量x并赋值为3
假如现在写一条语句:
x=‘hello world’
则之前的整型变量x不复存在。x的变量类型现在为字符串变量。
- 变量类型可以随时改变的原因:
python采用基于值的内存管理模式。赋值语句的执行过程是:首先把等号右侧表达式的值计算出来,然后在内存中寻找一个位置把值存放进去,最后创建变量并指向这个内存地址。python中的变量并不直接存储值,而是存储了值的内存地址或者引用。 - 创建变量或者修改变量的值:变量出现在赋值运算符或者复合运算符的左边。否则表示引用该变量的值。
例如:
- 在python中定义变量名时:
1、变量名必须以字母或下划线开头
2、变量名中不能有空格和标点符号
3、不能使用关键字作为变量名
4、不建议使用系统内置的模块名、类型名或者函数名以及已导入的模块名及其成员名作为变量名。
5、变量名对英文字母的大小敏感.例如student和Student是不同的变量
数字
- 内置整数、实数与复数
python支持任意大的数字,具体可以大到什么程度仅受内存大小的限制。
由于精度的问题,实数运算可能会有一定的误差,应尽量避免在实数之间直接进行相等性测试,而是应该以两者之差的绝对值是否足够小作为两个实数是否相等的依据。
例如:
复数:
分数:
字符串与字节串
python中没有字符常量和变量的概念,只有字符串类型的常量和变量,单个字符也是字符串。使用单引号、双引号、三单引号、三双引号作为定界符来表示字符串,并且不同的定界符之间可以互相嵌套。python3.x全面支持中文,统计字符串长度时中文和英文字母都作为一个字符对待,甚至可以使用中文作为变量名。
- 字符串对象的创建
x='Hello world.'
x="Python is a great language."
x='''Tom said,"Let's go."'''
- 字符串对象的链接
x='good '+'morning'
x='good ''morning'
x='good '
x=x+'morning'
运行结果:
- 字符串对象的索引
course='hello world'
course1='''hello
world
i
like
you
!'''
print(course)
print(course1)
print(course[0])#字符串的索引 正序从0开始 逆序从-1开始
print(course[-1])
print(course[-2])
print(course[0:3])#索引了012 没有索引到[3]
print(course[1:4])#索引了123 没有索引到[4]
print(course[5])#空格也算一个字符
print(course[6:])#不提供结束值时,将索引到底
print(course[:3])
print(course[1:-1])
print(course[-1:1])
print(course[:])#全部打印
another=course[:]
print(another)
对应的运行结果:
- 编译器
- 常用函数
- 对str类型的字符串调用其encode()方法编码得到bytes字节串,对bytes字节串调用其decode()方法并指定正确的编码格式得到str字符串。
列表、元组、字典、集合
创建:
x_list=[1,2,3]
x_tuple=(1,2,3)
x_dict={'a':97,'b':98,'c':99}
x_set={1,2,3}
print(x_list[1])
print(x_tuple[1])
print(x_dict['a'])
3 in x_set