Python保留字与标识符、变量、基本数据类型

目录

1.保留字与标识符

1.1.保留字

1.2·标识符

2·变量

3·基本数据类型

3.1·数字类型

3.1.1·整数

3.1.2·浮点数

3.1.3·复数

3.2·字符串类型

3.3·布尔类型

3.4·数据类型转换

常用类型转换函数


1.保留字与标识符

1.1.保留字

        保留字是Python语言中一些被赋予特定意义的单词。开发程序时,不可以吧这些保留字作为变量、函数、类、模块和其他对象名称来使用。

Python中的保留字

    and 

用于表达式运算,逻辑与操作

    as

用于类型转换
assert断言,用于判断变量或条件表达式的值是否为真
break中断循环语句的执行
class用于定义类
continue继续执行下一次循环
def用于定义函数或方法
del删除变量或者序列的值
elif条件语句 与if else 结合使用
else条件语句 条件语句,与if,elif结合使用。也可以用于异常和循环使用
exceptexcept 包括捕获异常后的操作代码,与try,finally结合使用exec用于执行python语句
for循环语句
finally用于异常语句,出现异常后,始终要执行finally包含的代码块。与try,except结合使用
from用于导入模块,与import结合使用
global定义全局变量
if条件语句,与else,elif结合使用
import用于导入模块,与from 结合使用
in判断变量是否存在序列中
is判断变量是否为某个类的实例
lambda定义匿名函数
not用于表达式运算,逻辑非操作
or用于表达式运算,逻辑或操作
pass空的类,函数,方法的占位符
print打印语句
raise异常抛出操作
return用于从函数返回计算结果
try包含可能会出现异常的语句,与except,finally结合使用
 
while循环语句
with简化Python的语句
yield

                                   用于从函数依次返回值

None空值
True布尔类型表示真,也表示数值1
False布尔类型表示假,也表示数值0

在解释中输出保留字

import keyword
print(keyword.kwlist)

运行结果:

['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', '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']

1.2·标识符

        标识符 可以简单的理解为一个名字,它主要用来标识变量、函数、类、模块和其他对象名称。

规则如下:

                由字母、下划线“_”和数字组成。第一个字符不能时数字和特殊字符

                标识符中不能包含空格、@、%、和$等特殊字符

                标识符中的字母时严格区分大小写的,两个同样的单词,如果大小写格式不一样,代表的意义时完全不同的。

                Python中以下划线开头的标识符有特殊的意义,一般避免使用相似的标识符。

                 如:

                        1·以单划线开头的标识符(如 _width)表示不能直接访问的类属性,也不能通过

                        2·from  ***    import  ***   导入。

                        3· 以双下划线开头的标识符(_ _width)表示类的私有成员

                        4·以双下划线开头和结尾的是Python里专用的标识,如_ _init_ _() 表示构造函数

2·变量

        在Python中,变量严格意义上应该称为“名字”,也可以理解为标签。如果将值“我爱学“Python”赋值给python,python就是变量。在大多数编程语言中,都把这一过程称为“把值存储在变量中”,就是存储在计算机内存的某个位置

变量的定义与使用

在Python中,不需要先声明变量名及其类型,直接赋值即可创建各种类型的变量。但是变量的命名并不是任意的,应当遵循以下几条规则:

        1.变量名必须是一个有效的标识符

        2.变量名不能使用Python中的保留字

        3.慎用小写字母 l 和大写字母 O

        4.应当选择有意义的单词作为变量名

为变量赋值可以通过(=)来实现,语法格式如下:

变量名 = 变量值

例如:

number = 100              # 创建变量number,并赋值为100,该变量为数值类型

nickname = "碧海苍茫"      #  字符串类型的变量 

在Python中可以通过 type() 函数获取变量的类型,例如:

>>> nickname = "碧海苍茫"    # 字符穿类型的变量
>>> print(type(nicknaem))   # 打印输出变量nickname的类型
<class 'str'>
>>> nickname = 100          # 整型变量
>>> print(type(nickname))
<class 'int'>

在Python中可以通过 id() 函数获取变量的内存地址,例如:

>>> no = number = 100
>>>pritn(id(no))
140728436073216
>>>print(id(number))
140728436073216

3·基本数据类型

3.1·数字类型

在Python语言中,数字类型主要包括整数、浮点数、复数。

3.1.1·整数

整数用来表示整数数值,既没有小数部分的数值。在Python中,整数包括正整数、负整数和0.

3.1.1.1·十进制整数

十进制整数的表现形式和我们平时用的数字是一样的,例如:

1
12
123
12345
123456
1234567
12345678
123456789
-123456
0

3.1.1.2·八进制整数

由0~7组成,进位规则为“逢八进一”,并且以0o/0O开头的数,如0o123(转为十进制数为83)-0o123(转换为十进制数为-83)

3.1.1.3·十六进制整数

由0~9、A~F组成,进位规则为“逢十六进一”,并且以0x/0X开头的数,如0x25(转换为十进制数为37)、0xb01e(转换为十进制数为45086)

3.1.1.4·二进制整数

 由0和1两位数组成,进位规则为“逢二进一”,并且以0b/0B开头的数如101(转换为十进制数为5)1010(转换为十进制数为10)

3.1.2·浮点数

浮点数由整数部分和小数部分组成,主要用于处理包括小数的数。例如:1.14/0.5、-1.732、3.1415926535897932384626。浮点数也可以用科学计算法表示例如:2.7e2、-3.14e5等

在使用浮点数计算时,可能出现小数位数不确定的情况,例如:

计算0.1+0.1得到我们想要的结果0.2,

而计算0.1+0.2时讲的到我们不想要的结果0.30000000000000004

>>> 0.1+0.1
0.2
>>> 0.1+0.2           
0.30000000000000004

实例:

height = 1.70                             # 保存身高的变量,单位:米
print("您的身高:" + str(height))
weight = 48.5                             # 保存体重的变量,单位:千克
print("您的体重:" + str(weight))
bmi=weight/(height*height)                # 用于计算BMI指数,公式为“体重/身高的平方”
print("您的BMI指数为:"+str(bmi))          # 输出BMI指数 str()函数用于将整数类型转换为字符串类型
# 判断身材是否合理
if bmi<18.5:                              # 判断语句
    print("您的体重过轻 ~@_@~")
if bmi>=18.5 and bmi<24.9:
    print("正常范围,注意保持 (-_-)")
if bmi>=24.9 and bmi<29.9:
    print("您的体重过重 ~@_@~")
if bmi>=29.9:
    print("肥胖 ^@_@^")

3.1.3·复数

Python中的复数与数学中的复数的形式完全一致,都是由实部和虚部组成,并且使用 j或J 表示虚部,表示方法为实部和虚部用 + 连接。例如一个复数实部为3.14,虚部为12.5j,则这个复数为 3.14+12.5j

3.2·字符串类型

字符串就是连续的字符序列,可以是计算机能表示的一切字符的集合。在Python中字符串属于不可变序列,通常使用英文单引号 ' '、英文双引号 " "、英文三引号 ''' '''  、""" """,括起来。其中单引号和双引号中的字符必须在一行上,而三引号内的字符可以分布在多行上(输出是也是多行输出)。

例如:

title = '我喜欢的名言警句'
mot_cn = "命运给与我们的不是失望之酒,而是失望之杯"   # 单行和双行必须在同行上
mot_en = '''Our destiny offers not zhe cup of despair,
but the chance of opportunity.'''
print(title)
print(mot_cn)
print(mot_en)

运行结果:

我喜欢的名言警句
命运给与我们的不是失望之酒,而是失望之杯
Our destiny offers not zhe cup of despair,
but the chance of opportunity.

实例:

print('''
                       ▶  学编程,你不是一个人在战斗~~
                       |                   
                __\--__|_ 
II=======OOOOO[/ ★101___|           
          _____\______|/-----. 
        /___mingrisoft.com___|              
         \◎◎◎◎◎◎◎◎⊙/ 
           ~~~~~~~~~~~~~~~~
''')

转义符

Python中的字符串还支持转义字符,所谓的转义字符是指使用反斜杠 “ \ ” 对一些特殊的字符进行转义(就是将特殊的字符转为字符串)

常用的转义符

\续行符
\n换行符
\0
\t

水平制表符,

跳到下一个制表位

(一个 \t 一个tab键)

\"双引号
\'单引号
\\一个反斜杠
\f换页
\0dd

八进制数

dd代表八进制整数(对应的ASCII编码中字符对应的八进制数)

如  \12 代表换行

\xhh

十六进制数

hh代表十六进制整数(对应的ASCII编码中字符对应的八进制数)

如  \x0a 代表换行

在字符串的定界符引前的前面加上字母 r 或 R ,那么该字符串将原样输出,字符串中的转义符将失效。

例如:

>>> print("失望之酒\x0a机会之杯")
失望之酒
机会之杯
>>> print(r"失望之酒\x0a机会之杯")
失望之酒\x0a机会之杯

3.3·布尔类型

        布尔类型主要用来表示真或假的值。在Python中,标识符True和False被解释为布尔值。另外Python中的布尔值可以转化 为数值,其中True表示 1 ,False表示 0 。

        Python中的布尔类型的只可以进行数值运算,例如“False+1 ” 的结果为1,但是不建议对布尔类型的只进行数值运算。 

        在Python中,所有的对象都可以进行真值测试。其中只有下面的几种情况得到的值为假。其他对象在 if 或者 while 语句中都表现为真。

        1.False 或 None

        2·数值中的0,包括0、0.0、虚数0.

        3·空序列,包括字符串,空元祖、空列表、空字典

        4.自定义对象的实例,该对象的_ _bool_ _ 方法返回False,或_ _len_ _ 返回0

3.4·数据类型转换

是把一种数据类型的变量转换成另外一种数据类型。

常用类型转换函数

函数作用
int(x)将对象 x 转换为十进制整数类型
float(x)将对象 x 转换为浮点数(有小数的十进制数)类型
complex(x,y)创建一个复数
str(x)将 x 对象转换为字符串类型
repr(x)将 x 对象转换为表达式字符串
eval(str)计算在字符串对象 str 中的有效表达式,并返回一个对象
chr(x)将整数(十进制) x 转换为一个字符(对应的Unicode编码字符)
ord(x)将字符 x 转换为Unicode编码对应的字符(x为一个字符串类型而且只能是一个字符)
bin(x)将整数 x 转换为二进制字符串
hex(x)将整数 x 转换为十六进制字符串
oct(x)将整数 x 转换为八进制字符串

eval()函数:

eval(expression,globals,locals)

expression:字符串类型表达式

globals:可选参数,变量作用域,全局命名空间,如果指定了globals参数,则globals参数必                  须是个字典对象

locals:可选参数,变量作用域,局部命名空间,如果指定了locals参数,则locals参数可以是任何映射对象(字典对象)

lst = "[0,1,2,3,4,5]"
tup = "('a','b','c','d','e')"
dic = "{'a':1,'b':2,'c':3,'d':4,'e':5}"
se = "{11,22,33,44,55}"
ints = '100'
print(type(lst),type(tup),type(dic),type(se),type(ints))
a = eval(lst)   # 转为列表
b = eval(tup)   # 转为元组
c = eval(dic)   # 转为字典
d = eval(se)    # 转为集合
e = eval(ints)  # 转为整数类型
print(a,'类型是:',type(a))
print(b,'类型是:',type(b))
print(c,'类型是:',type(c))
print(d,'类型是:',type(d))
print(e,'类型是:',type(e))
print(eval("100+50+10"))   # 返回计算结果160


dic = {'a':10,'b':20,'c':'a+b'}
dic['c']= eval(dic['c'],dic.copy())
print(dic)

运行结果:

<class 'str'> <class 'str'> <class 'str'> <class 'str'> <class 'str'>
[0, 1, 2, 3, 4, 5] 类型是: <class 'list'>
('a', 'b', 'c', 'd', 'e') 类型是: <class 'tuple'>
{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} 类型是: <class 'dict'>
{33, 11, 44, 22, 55} 类型是: <class 'set'>
100 类型是: <class 'int'>
160
{'a': 10, 'b': 20, 'c': 30}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_painter

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值