推荐白月黑羽Python在线教程

白月黑羽 站在初学者的角度为大家安排了Python学习教程,帮助大家迅速掌握程序开发技能。

http://www.python3.vip/doc/tutorial/python/home/

变量 和 注释

本文目录

我们已经知道,Python语言中,所有的数据类型都是对象

整数、小数 是对象,

后面要学习的 字符串,元组、列表、函数、模块、 类、类实例都是对象。

对象可以看成是所有 Python 数据类型的 总称。

变量的概念

大家来思考一个问题:

我们人的语言里面,要提到一个人或物体, 是怎么说的?

比如说 聊天的时候,提到你的一个同学, 提到一支球队

对了,用他们的名字, 王晓刚同学, 湖人队等等。

假设,我们说话的时候,不允许使用 事物的名字, 我们的话就没法说了。

人类语言是这样,计算机语言也是一样,如果产生了数据对象,却没有名字,就像这样

43
'你好,今天天气真不错'

我们后面的代码,怎么去使用这个数字 43 和 字符串 ‘你好,今天天气真不错’ 呢?

所以编程语言的数据对象也需要一个名字。

Python语言中对象的名字就是变量

我们可以这样给数据对象起名字

age = 43
weather = '你好,今天天气真不错'

定义的变量名 和 数据对象 之间 用 等号

其中 age 就是 数字对象 43 的名字,我们也可以说:变量age的值是数字对象43

下面这个语句,通常也叫做,定义一个变量age 值为 43, 或者说给变量age 赋值 为43

age = 43

weather 就是 字符串对象 ‘你好,今天天气真不错’ 的名字,我们也可以说:变量 weather 的值是字符串对象 ‘你好,今天天气真不错’

以后,我们再使用 这两个对象,就可以使用它们的名字, 变量名。

代码执行的时候,解释器看到 这个变量名 就知道代表的就是对应的数据对象。

比如

print(age)
print(weather)

大家运行一下,可以发现,一样可以打印出 对象的内容。

变量的命名规则

变量名不是随便取的,有一定的规则。

  • 一般以字母开头,不能以数字开头, 像 1var 这样是不行的

  • 变量名中间可以使用 数字 或者 下划线 _ ,像下面这样都是可以的

    Hello, var1, age2name, age_name

    一个好的工程师,变量名不是乱取的,变量名通常可以表示其对于数据对象的含义。

    这样以后看这段代码,根据名字就能知道是什么意思

    比如 startTime, your_name, 这样的变量名,看了就知道是啥意思

    而像 a b c 这样的变量名就不好,因为看了不知道是啥意思。

注意变量名的大小写是不能改变的。 比如 startTime 和 starttime 就是两个不同的变量名。

变量值的变化

对象的名字为什么叫变量呢?因为它会变 :)

Python语言中,变量的值会可以产生变化

这里特别要注意的是,这种变化有如下两种情况

  • 第一种:变量 重新指向了 新的对象

    就是重新赋值了,比如

      age = 43
    age = 'hello'

    第二条语句执行完, 变量age就不是数字对象43的名字了,而是字符串对象’hello’的名字了。

    变量的赋值有些特殊的写法

      var = 1
    var = var + 1 # 把var 的值加1 后,再赋给var, var 就变成了 2
    var += 1 # 等价于 var = var + 1 ,执行后var 就变成了 3
  • 第二种 变量 指向的对象 本身发生了变化

    这种情况需要变量指向的对象是可变的数据类型。比如:列表、字典,或者自定义的类实例对象。

    这几种我们后面会学。这里先给大家举个字典对象的例子

      info = {'name' :'黑羽白月', 'height':'180cm'}
    info['height'] = '175cm'
    print(info)

    第二条语句就是让变量对应的字典对象的值 发生了变动

注释

虽然Python语言是一种容易理解和阅读的编程语言。

但是毕竟不是人类语言。

我们写的代码 为了以后 别人能读懂, 甚至以后自己能回过头看的时候,能看懂, 就需要加入一些我们熟悉的人话,也就是人类语言,辅助理解。

这些辅助理解的人话,就是注释。

这些人话可以是任何一种语言,只要方便你看懂代码就行,中文、英文、法文都可以。

Python的注释以 # 开头,后面的内容都是注释

比如

# info 变量 记录 作者的信息,包括 名字,身高,体重
info = {'name' :'黑羽白月', 'height':'180cm'} # 改变 作者的身高记录
info['height'] = '175cm' print(info) # 打印身高到屏幕上

怎么样,有了上面的注释,这些代码是不是更容易读懂了。

我们要注意的是,通常注释是不会对代码的执行有影响的(除了一些非常特殊的注释,比如代码开头的文件编码注释,以后会讲)

注释可以单独作为一行, 比如:

# info 变量 记录 作者的信息,包括 名字,身高,体重
info = {'name' :'黑羽白月', 'height':'180cm'}

也可以接在代码的后面,比如:

print(info)  # 打印身高到屏幕上

也可以连续有多行的注释,比如:

# info 变量 记录 作者的信息
# 包括 名字,身高,体重
info = {'name' :'黑羽白月', 'height':'180cm'}

白月黑羽Python在线教程的更多相关文章

  1. Python在线教程

    Python 3.x的 http://www.ziqiangxuetang.com/python3/python3-stdlib.html 廖雪峰的官方网站 http://www.liaoxuefen ...

  2. Python在线教程(廖雪峰)

    http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000

  3. Python爬虫教程-16-破解js加密实例(有道在线翻译)

    python爬虫教程-16-破解js加密实例(有道在线翻译) 在爬虫爬取网站的时候,经常遇到一些反爬虫技术,比如: 加cookie,身份验证UserAgent 图形验证,还有很难破解的滑动验证 js签 ...

  4. Python学习教程:Pandas中第二好用的函数

    从网上看到一篇好的文章是关于如何学习python数据分析的迫不及待想要分享给大家,大家也可以点链接看原博客.希望对大家的学习有帮助. 本次的Python学习教程是关于Python数据分析实战基础相关内 ...

  5. 深度学习入门者的Python快速教程 - 基础篇

      5.1 Python简介 本章将介绍Python的最基本语法,以及一些和深度学习还有计算机视觉最相关的基本使用. 5.1.1 Python简史 Python是一门解释型的高级编程语言,特点是简单明 ...

  6. 【Python大系】Python快速教程

    感谢原作者:Vamei 出处:http://www.cnblogs.com/vamei 怎么能快速地掌握Python?这是和朋友闲聊时谈起的问题. Python包含的内容很多,加上各种标准库.拓展库, ...

  7. 《Python算法教程》译者序

    在计算机的世界中,算法本质上是我们对某一个问题或者某一类问题的解决方案.也就是说,如果我们想用计算机来解决问题的话,就必须将问题的解决思路准确而完整地描述出来,同时计算机也要能理解这个描述.这需要我们 ...

  8. .Net程序员之Python基础教程学习----列表和元组 [First Day]

    一. 通用序列操作: 其实对于列表,元组 都属于序列化数据,可以通过下表来访问的.下面就来看看序列的基本操作吧. 1.1 索引: 序列中的所有元素的下标是从0开始递增的. 如果索引的长度的是N,那么所 ...

  9. Python 学习教程汇总

    Python快速教程http://www.cnblogs.com/vamei/archive/2012/09/13/2682778.html简明Python教程https://bop.molun.ne ...

随机推荐

  1. 201709025工作日记--更新UI方法

    1.handler+Thread 和 runOnUIThread 和 handler.post 方法 区别: 从实现原理上,两者别无二致,runOnUiThread也是借助Handler实现的.  对 ...

  2. dlib安装教程(for linux)

    https://blog.csdn.net/LoHiauFung/article/details/78454905 https://www.linuxidc.com/Linux/2017-11/148 ...

  3. 伪共享(False Sharing)

    原文地址:http://ifeve.com/false-sharing/ 作者:Martin Thompson  译者:丁一 缓存系统中是以缓存行(cache line)为单位存储的.缓存行是2的整数 ...

  4. codevs 1160

    这道题还是和蛇形填数有关,因为要不停的去转圈圈去判断是否到了最中间的那个位置,所以用到了递归的思想. #include<stdio.h> int n,a[100][100]; void r ...

  5. D3 drag

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. [leetcode] 14. Climbing Stairs

    这道题leetcode上面写着是DP问题,问题是我一开始写了个简单的递归结果直接超时,所以没办法只好拿迭代来做了.题目如下: You are climbing a stair case. It tak ...

  7. WPF核心对象模型-类图和解析

    DispatcherObject是根基类,通过继承该类,可以得到访问创建该对象的UI线程的Dispatcher对象的能力.通过Dispatcher对象,可以将代码段合并入该UI线程执行. Depend ...

  8. Replication--查看未分发命令和预估所需时间

    当复制有延迟时,我们可以使用复制监视器来查看各订阅的未分发命令书和预估所需时间,如下图: 但是当分发和订阅数比较多的时候,依次查看比较费时,我们可以使用sys.sp_replmonitorsubscr ...

  9. js获取select下拉框的value值和text文本值

    介绍一种取下拉框值以及绑定下拉框数据的方法    这里用到的jquery-ui-multiselect插件 1.前台html代码 <span class="ModuleFormFiel ...

  10. 20181015记录一个简单的TXT日志类

    20190422添加换行以及时间记录 using System; using System.Collections.Generic; using System.IO; using System.Lin ...