数据类型
变量
变量是存储在内存中的值,声明变量就是在内存中开辟一块空间。
常量
变量名全大写被认为是常量。
变量命名规则
只能由字母,数字,_,不能以数字开头,区分大小写,且不能使用python保留字。
建议命名规则
驼峰式:如果变量名由多个单词组成,除第一个单词外以后每个单词首字母大写
如:getName、payMoney、getElementByName
如果定义类名,则每个单词首字母大写
类:GetName
下划线式主要用于变量、函数的命名。
如get_name
python是一种动态类型语言,变量类型可以随时变换。
案例
# 使用内置函数type()返回变量类型
myname = 'tz'
print(type(myname)) # 输出为<class 'str'>,字符串类型变量
age = 68
print(type(age)) # 输出为<class 'int'> ,整型的变量
保留字
保留字是python语言中已经定义了特殊意义的单词,不可以用作其他命名。
保留字区分大小写。
查看python有哪些关键字
# 导入keyword包
>> > import keyword
>> > print(keyword.kwlist)
['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del',
'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda'
, 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
多变量赋值
案例
a = b = c = 1
print(a, b, c) # out:1 1 1
a, b, c = 1, 2, 'tz'
print(a, b, c) # out:1 2 tz
标准数据类型
Python中定义了八种数据类型
- Numbers(数字)
- String(字符串)
- Boolean(布尔值)
- None(空值)
- List(列表)
- Tuple(元组)
- Dict(字典)
- Set(集合)
PS:菜鸟教程说是五种,书上说是三种,百度一下之后我觉得是八种哈哈。
四种数字类型
- int(整型)
- long(长整型,也可用来表示八进制跟十六进制)
- float(浮点型)
- complex(复数)
数字类型
也叫不可改变的数据类型,如果要修改数字类型变量的值,会向内存重新申请一块空间用于存放值,再将变量指向新的内存地址。相当于分配了一个新的对象。
#函数id()可以返回变量所指的内存地址
age = 18
print('age的内存地址为:',id(age)) #输出为 age的内存地址为: 1509715504
age = 68
print('改变后的age内存地址为:',id(age)) #输出为 改变后的age内存地址为: 1509717104
整数
包括正整数、负整数和0
整数类型包括是十进制整数、八进制整数、十六进制整数和二进制整数
十进制数
逢十进一
不能以0作为开头,数字0除外
八进制数
逢八进一
由0~7组成,以0o开头,如0o123,-0o123
十六进制数
逢十六进一
由09,AF组成,以0x开头,如0x25,0xb01e
二进制数
逢二进一
只有0,1两个基数,如101,1010
浮点数
由整数部分跟小数部分组成,如3.1415926
复数
与数学中复数形式一致,由实部跟虚部组成,虚部由j或J表示。
例如一个复数的实部为5.2,虚部为12.6j,则这个复数为5.2+12.5j
我也不知道有啥用,目前也用不到所以不必深究。
字符串类型
字符串是连续的字符序列,属于不可变序列。
#四种声明方式
a = '天道酬勤'
b = "天道酬勤"
#三引号,原来是什么格式输出即为什么格式
c = '''天道酬勤'''
d = """天道酬勤"""
布尔类型
表示真假的值,如True、False
可以转化成数值,True表示1,False表示0
if 1:
print('True')
其中只有下列情况得到的值为假,其余都为真
- False或None
- 数字0或0.0
- 空序列,空字符串,空元组,空字典,空列表
- 自定义对象实列,如该对象的__bool__方法返回False
常用类型转换函数
转义字符
使用反斜杠\对一些特殊字符进行转义
\\ 打印一个反斜杠
\' 打印一个单引号
\" 打印一个双引号
\n 换行符
\t 制表符(4个空格)
\0 空
\ 续行符
\f 换页
\0dd 八进制数,dd为字符
\xhh 十六进制数,hh为字符
在字符串加r或R会进行原样输出,不会转义
print('失之我命\x0a得之我幸')
print(r'失之我命\x0a得之我幸')
---------------执行脚本--------------------
失之我命
得之我幸
失之我命\x0a得之我幸
补充
#\r 打印光标回到行首,覆盖光标之前的内容
print("hello\rworld")#out:world #可以看到执行结果没了hello
学习来自:B站课程 P7-13,菜鸟教程,CSDN大佬,《python从入门到项目实践》明日科技 第四章