1、运行hello_world.py时发生的情况

  运行hello_world.py时,Python都做了些什么呢?实际上,即便是运行简单的程序,Python所做的工作也相当多:

#!/usr/bin/env python
# -*- coding:utf-8 -*- print("Hello Python world!")

  运行上述代码时,你将看到如下输出:

Hello Python world!

  运行文件hello_world.py时,末尾的.py指出这是一个python程序,因此编译器将使用python解释器来运行它。Python解释器读取整个程序,确定其中每个单词的含义。例如,看到单词print时,解释器就会将括号中的内容打印到屏幕,而不会管括号中的内容是什么。

2、变量

  下面尝试在hello_world.py中使用一个变量。在这个文件开头添加一行代码,并对第二行代码进行修改,如下所示:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author:jie.fang message = "Hello Python world!"
print(message)

  运行这个程序,输出与之前的一样:

Hello Python world!

  我们添加了一个message变量。每个变量都存储了一个值——与变量相关联的信息。在这里,存储的值为文本"Hello Python world!"。

  添加变量导致python解释器需要做更多的工作。处理第一行代码时,它将文本"Hello Python world!"与变量message关联起来;处理第二行代码时,它将与变量message关联的值打印到屏幕。

  下面来进一步扩展这个程序:修改hello_world.py,使其再打印一条消息。为此,在hello_world.py中添加一个空行,再添加如下两行代码:

#!/usr/bin/env python
# -*- coding:utf-8 -*- message = "Hello Python World!"
print(message) message = "Hello Python Crash Course world!"
print(message)

  现在运行这个程序,将看到两行输出:

Hello Python World!
Hello Python Crash Course world!

  在程序中可以随时修改变量的值,而python将始终记录变量的最新值。

2.1 变量的命名和使用

  在python中使用变量时,需要遵守一些规则和指南。违反这些规则将引发错误,而指南旨在让你编写的代码更容易阅读和理解。请务必牢记下述有关变量的规则。

  1. 变量名只能包含字母、数字和下划线。变量名可以字母或者下划线打头,但不能以数字打头,例如,可将变量命令为message_1,但不能将其命令为1_message。
  2. 变量名不能包含空格,但可以使用下划线来分隔其中的单词。例如,变量名greeting_message可行,但变量greeting message会引发错误。
  3. 不要将python关键字和函数名作为变量名,即不要使用python保留用于特殊用途的单词,如print。
  4. 变量名应既简介又具有描述性。例如,name比n好,student_name比s_n好,name_length比length_of_person_name好。
  5. 慎用小写字母l和大写字母O,因为它们可能被人看成数字1和0。

  要创建良好的变量名,需要经过一定的实践,在程序复杂而有趣时尤其如此。随着编写的程序越来越多,并开始阅读别人编写的代码,越来越善于创建有意义的变量名。


  注意  就目前而言,应使用小写的python变量名。在变量名中使用大写字母虽然不会导致错误,但避免使用大写字母是个比较好的习惯。


2.2 使用变量名时避免命名错误

  编写程序的时候,定义变量和变量的引用时要注意变量名是否有误。错误实例如下:

#!/usr/bin/env python
# -*- coding:utf-8 -*- message = "Hello Python World!"
print(mesage)

  在上面的代码中定义的变量名是message,但是print引用的时候却是mesage,运行该程序,将会有如下报错:

Traceback (most recent call last):
File "D:/JetBrains/WorkPlace/Python3/0902/error.py", line 7, in <module>
print(mesage)
NameError: name 'mesage' is not defined

  程序存在错误时,python解释器将竭尽所能地帮助你找出问题所在。程序无法成功运行时,解释器会提供一个Traceback。Traceback是一条记录,指出了解释器在尝试运行代码时,在什么地方遇到了错误。下面就是刚刚变量名引用错误的一个Traceback:


Traceback (most recent call last):
File "D:/JetBrains/WorkPlace/Python3/0902/error.py", line 7, in <module>
print(mesage)
NameError: name 'mesage' is not defined


  计算机一丝不苟,但不关心拼写是否正确。因此创建变量名和编写代码时,你无需考虑英语中的拼写和语法规则。

  很多编程错误都很简单,只是在程序的某一行输出了一个字符。为找出这种错误而花费很长时间的大有人在。


注意  要理解新的编程概念,最佳的方法就是尝试在程序中使用它们。


未完待续...

python变量和简单的数据类型的更多相关文章

  1. Python入门学习:1.变量和简单的数据类型

    python入门学习:1.变量和简单的数据类型 关键点:变量.字符串.数字 1.1 变量的命名和使用1.2 字符串1.3 数字1.4 注释 1.1 变量的命名和使用   变量,顾名思义是一个可变的量, ...

  2. python的变量和简单的数据类型

    决定学习python这门语言了,本人资质愚钝,只会把学到的东西记录下来,供自己查漏补缺,也可以分享给和我一样正在学习python语言的人,若在记录中存在什么错误,希望多多批评指正,谢谢. Python ...

  3. Python 变量(赋值,数据类型,数据类型转换)

    一.python 变量赋值方式有三种: 1.直接赋值:age = 28 2.多个变量赋值 age, sex = 28, 1  #每个变量都必须要有个对应的值 3.特殊形式的赋值(链式赋值)  a = ...

  4. Python学习-------变量和简单的数据类型(String)

    1.变量命名和使用 变量命名规则:a.变量名只能包含(字母    数字   下划线),且变量不能以数字开头,例如:变量 s_1(正确),变量1_s(错误) b.变量名不能包含空格,可以使用下划线来间隔 ...

  5. python变量及简单数据类型

    python 目录 python 1.变量 1.变量的定义 2.变量的命名 3. 关键字 4.变量的命名规则 5.变量的类型 5.不同类型变量之间的计算 6.变量的输入 7.变量的格式化输出 8.格式 ...

  6. Python自学02day——变量和简单的数据类型

    1.变量是什么? 变量存储在内存中的值,这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据类型, ...

  7. Python变量和简单数据类型

    变量的命名和使用 在Python中使用变量时 ,需要遵守一定的规则和指南. 变量名只能包含字母‘数字和下划线 变量名不能包含空格,但可以用下划线分割其中单词 不要将Python关键字和函数名用作变量名 ...

  8. python—变量和简单数据类型

    1.变量 在程序中可随时修改变量的值,python始终记录变量的最新值 变量名:必须以字母或者下划线开头,只能包含字母数字和下划线,建议使用下划线+小写字母的方式命名,不能为函数名和python关键字 ...

  9. [ python ] 变量及基础的数据类型

    python2 和 python3 不同的编码方式 python2 默认编码方式是 ascii码 python3 默认编码方式是 utf-8 具体表现为:当 python3 和 python2 在打印 ...

随机推荐

  1. GRE and VXLAN with Open vSwitch

    因为在OpenStack的Neutron中比较常用,所以参考别人的博客试了下OVS的一些隧道封装功能(GRE,VXLAN). 实验:实现两个host的Network namespace之间的通信,NS ...

  2. 基于RabbitMQ的跨平台RPC框架

    RabbitMQRpc protocobuf RabbitMQ 实现RPC https://www.cnblogs.com/LiangSW/p/6216537.html 基于RabbitMQ的RPC ...

  3. python中nltk的下载安装方式

    首先去http://nltk.org/install.html下载相关的安装程序,然后 在cmd窗口中,进入到python的文件夹内的 Scripts内,运行easy_install pip 安装Py ...

  4. Nodejs&Express

    http://www.expressjs.comhttp://github.com/lelandtseng/form-datahttp://github.com/lelandtseng/mongo-m ...

  5. PHP 缓存插件之 Zend Opcache ( 取代 APC )

    简介: Zend Opcache .APC 这都是 PHP 代码加速器,将 PHP 源代码的编译结果缓存起来,再次调用时对比时间标记,如果没有改变则使用缓存数据,免去再次解析代码的开销. APC 止步 ...

  6. Hibernate的HQL中in参数设置

    平时经常用Hibernate,由于习惯表间不建立关联,所以HQL查询时候经常要用in语句. 我最常用的情况有2种: 1.in后是个子查询,如 FROM A WHERE A.ID IN (SELECT ...

  7. Linux 入门知识一(附上如何解决Ubuntu的root密码问题)

    .centos有拥有七个控制台,其中第一到第六个是字符界面,第七个是图形界面 切换的快捷键是ctrl+shift+fn(n为自然数)   输入tty的话,可以检查当前处于哪个控制台   如何在cent ...

  8. 自定义tag标签的方法

    JSP1.0中可以通过继承TagSupport或者BodyTagSupport来实现自定义的tag处理方法. JSP2.0中也支持另外一种更为简单的自定tag的方法,那就是直接讲JSP代码保存成*.t ...

  9. redis centos7

    官网下载tar包 make 修改conf 修改 启动脚本 utils/redis_init_script 开放端口6379

  10. python's descriptor

    [python's descriptor] 1.实现了以下三个方法任意一个的,且作为成员变量存在的对象,就是descriptor. 1)object.__get__(self, instance, o ...