`

Python入门 Python变量和数据类型

阅读更多

一、整数:

    Python可以处理任意大小的整数,当然包括负整数

二、浮点数

    浮点数也就是小数,之所以称为浮点数

     整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。

三:字符串

   字符串是以''""括起来的任意文本,比如'abc'"xyz"等等。

四:布尔值

   一个布尔值只有TrueFalse两种值

   布尔值可以用andornot运算。

五:空值

    空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。

 

变量:

在Python程序中,变量是用一个变量名表示,变量名必须是大小写英文、数字和_的组合,且不能用数字开头

在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量,例如:

a = 123    # a是整数
print a
a = 'imooc'   # a变为字符串
print a

这种变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。

静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。例如Java是静态语言,

 

当我们写:a = 'ABC'时,Python解释器干了两件事情:

1. 在内存中创建了一个'ABC'的字符串;

2. 在内存中创建了一个名为a的变量,并把它指向'ABC'

 

也可以把一个变量a赋值给另一个变量b,这个操作实际上是把变量b指向变量a所指向的数据,例如下面的代码:

a = 'ABC'
b = a
a = 'XYZ'
print b

最后一行打印出变量b的内容到底是'ABC'呢还是'XYZ'?如果从数学意义上理解,就会错误地得出b和a相同,也应该是'XYZ',但实际上b的值是'ABC',让我们一行一行地执行代码,就可以看到到底发生了什么事:

执行a = 'ABC',解释器创建了字符串  'ABC'和变量 a,并把a指向 'ABC':

执行b = a,解释器创建了变量 b,并把b指向 a 指向的字符串'ABC':

执行a = 'XYZ',解释器创建了字符串'XYZ',并把a的指向改为'XYZ',但b并没有更改:

所以,最后打印变量b的结果自然是'ABC'了。

 

,Python字符串用\进行转义。

\n 表示换行
\t 表示一个制表符
\\ 表示 \ 字符本身

 

如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦。为了避免这种情况,我们可以在字符串前面加个前缀 r ,表示这是一个 raw 字符串,里面的字符就不需要转义了。例如:

r'\(~_~)/ \(~_~)/'

但是r'...'表示法不能表示多行字符串,也不能表示包含'和 "的字符串(为什么?)

如果要表示多行字符串,可以用'''...'''表示:

'''Line 1
Line 2
Line 3'''

上面这个字符串的表示方法和下面的是完全一样的:

'Line 1\nLine 2\nLine 3'

还可以在多行字符串前面添加 r ,把这个多行字符串也变成一个raw字符串

r'''Python is created by "Guido".
It is free and easy to learn.
Let's start learn Python in imooc!'''
 

 

因为Python的诞生比Unicode标准发布的时间还要早,所以最早的Python只支持ASCII编码,普通的字符串'ABC'在Python内部都是ASCII编码的。

Python在后来添加了对Unicode的支持,以Unicode表示的字符串用u'...'表示,比如:

print u'中文'
中文

注意: 不加 u ,中文就不能正常显示。

 

转义:

u'中文\n日文\n韩文'

多行:

u'''第一行
第二行'''

raw+多行:

ur'''Python的Unicode字符串支持"中文",
"日文",
"韩文"等多种语言'''

如果中文字符串在Python环境下遇到 UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在第一行添加注释

# -*- coding: utf-8 -*-

目的是告诉Python解释器,用UTF-8编码读取源代码。然后用Notepad++ 另存为... 并选择UTF-8格式保存。

 

Python的整数运算结果仍然是整数,浮点数运算结果仍然是浮点数

1 + 2    # ==> 整数 3
1.0 + 2.0    # ==> 浮点数 3.0

但是整数和浮点数混合运算的结果就变成浮点数了:

1 + 2.0    # ==> 浮点数 3.0

 

为什么要区分整数运算和浮点数运算呢?这是因为整数运算的结果永远是精确的,而浮点数运算的结果不一定精确,因为计算机内存再大,也无法精确表示出无限循环小数,比如 0.1换成二进制表示就是无限循环小数。

 

Python的除法运算和java一样。/ 是整除。%是取余。

 

在Python中,布尔类型还可以与其他数据类型做 and、or和not运算,请看下面的代码:

a = True
print a and 'a=T' or 'a=F'

计算结果不是布尔类型,而是字符串 'a=T',这是为什么呢?

因为Python把0空字符串''None看成 False其他数值非空字符串都看成 True,所以:

True and 'a=T' 计算结果是 'a=T'
继续计算 'a=T' or 'a=F' 计算结果还是 'a=T'

要解释上述结果,又涉及到 and 和 or 运算的一条重要法则:短路计算

 

1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。

2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。

 


分享到:
评论

相关推荐

    Python入门--变量与数据类型的测试答案

    Python入门--变量与数据类型的测试答案

    python入门变量和数据类型

    python入门变量和数据类型 好,同学们,那么这一章节咱们要讲解的知识点就是变量了,那接下来老师在这一章节为同学们特意定制了三个目标,就是首先我们要了解变量的作用,其次怎么去定义变量,那么再次变量老师提前...

    python入门教程(非常详细),从零基础入门到精通,看完这一篇就够了.pdf

    本文档提供了 Python 编程语言的详细入门教程,从零基础到精通,涵盖了 Python 的各个方面,包括语法、数据类型、函数、模块、面向对象、异常处理、网络编程和并发编程等。 第一章:Python 介绍 * Python 由来和...

    小学生python入门-极度舒适的全套Python入门教程,小学生看了也能学会.pdf

    【Python入门基础知识】 Python是一种广泛使用的编程语言,尤其适合初学者和小学生学习。它以其简洁易懂的语法和丰富的库支持而备受青睐。在“小学生python入门-极度舒适的全套Python入门教程”中,主要介绍了以下...

    python入门教程大全.pdf 精心整理

    3. **Python基础常识**:涵盖Python的基础语法,如变量定义、数据类型(包括列表、字典)、注释方式(单行和多行注释)、类型检查(`type`和`object`的用法)等。 4. **中文字符输出乱码**:在Python3中,需要正确...

    python入门和简介

    - **变量和数据类型**:了解Python中的变量声明、赋值及常见数据类型(整型、浮点型、字符串、列表、元组、字典等)。 - **流程控制**:掌握条件语句(if-else)、循环语句(for、while)等控制流程的方法。 - **...

    Python入门.pdf

    本文档主要针对Python语言的入门知识,涵盖了Python的特点、适合领域、实际应用、与其他语言的比较、变量和数据类型等方面的知识点。 Python语言的特点是优雅、明确、简单,使用Python应该尽量写简单明确的代码,...

    头歌python入门之基础语法答案.pdf

    本资源涵盖了 Python 的基础语法,包括变量、数据类型、运算符、控制结构、函数等方面的知识点。 1. 变量和数据类型: Python 中的变量可以存储不同的数据类型,如整型、浮点型、字符串型等。变量可以使用赋值...

    Python实验报告_Python入门教程_

    1. **语法基础**:学习Python,首先要了解基本的语法结构,如变量声明、数据类型(整型、浮点型、字符串、布尔型等)、输入/输出操作、注释、运算符(算术、比较、逻辑、位运算符)等。 2. **控制流**:包括条件...

    写一些 python入门 入门例子和代码

    2. 变量和数据类型 # 定义变量 name = "Alice" age = 30 height = 5.5 # 浮点数 is_student = True # 打印变量 print(name, age, height, is_student) # 数据类型转换 number = int("123") # 字符串转换为整数 ...

    python入门教程(PPT39页).pptx

    此外,Python支持数据结构如变量、列表和字典,以及多线程和分布式操作,使得它可以灵活地处理不同规模的数据和并发需求。 Python的应用领域广泛,包括脚本程序、大型项目原型开发、科学计算、网络应用和计算机图形...

    Python入门基础教程PPT全套资料.zip

    本教程“Python入门基础教程PPT全套资料”旨在帮助新手快速掌握Python的核心概念和编程技巧。 首先,我们要明白Python的基本结构。Python代码以缩进为块,这与其他很多语言(如C++或Java)的花括号{}不同。这种设计...

    编程小白的第一本 Python 入门书_Python入门教程_python_

    在Python入门教程中,首先会介绍编程的基本概念,包括变量、数据类型(如整型、浮点型、字符串、布尔型)以及运算符的使用。你会了解如何声明并操作这些基本数据类型,进行算术运算和逻辑判断。接着,会深入讲解控制...

    Python数据分析自学入门.pdf

    接着,了解Python的数据类型和运算符是学习的基础。Python提供了六种标准数据类型: 1. Number(数字):包括整数(int)、浮点数(float)、布尔型(bool)和复数(complex)。 2. String(字符串):用单引号、双引号或三...

    人工智能实践教程-从Python入门到机器学习邵一川-教学大纲-8页.doc

    接着,课程深入讲解Python语法基础,包括变量和不同数据类型(如整型、浮点型、布尔型、复数类型)的使用,以及如何进行各种运算。学习者应能熟练掌握注释、行与缩进、语句换行等书写规范,同时了解关键字和运算符的...

    Python 入门

    关于Python变量和数据类型,文档中讲解了变量的创建、使用和变量作用域的概念。变量在赋值时创建,且必须先赋值才能在表达式中使用。变量在Python中是对象,拥有属性和方法。内建数据类型包括Boolean、Integer、...

    python从入门到精通第二版

    本书籍从基础开始,系统地讲解Python语言的各个方面,涵盖了变量、数据类型、列表、字典、用户输入、循环、函数、类等内容。 变量和简单数据类型 ------------------- ### 字符串和数 字符串是一种重要的数据类型...

Global site tag (gtag.js) - Google Analytics