变量

文件hello_world.py中, .py是python文件的后缀,因此会用Python interpreter解析。

$ cat hello_world.py
print("Hello Python world!")

现在改为变量形式,message即变量,每个变量都与一个值关联:

message = "Hello Python world!"
print(message)

变量名首先要有意义,其次要短。并且不能用关键字如print。另外,和车牌一样,避免用l和O,以免和1和0混淆。例如student_name强于s_nname_length强于length_of_persons_name。最后都用小写,因为大写在Python中有特殊的含义。

The best way to understand new programming concepts is to try using them in your programs.

是这么个理,learning by doing
变量不是装东西的盒子,而是标签。就是reference,pointer。

String类型

string是一系列字符,引号中的数据就是string,引号可以是单引号或双引号。这样有时就不需要转义(escape)了。如果需要,转义符仍为\
以下使用了方法(method),方法通过.调用,其后总是跟()的。方法可以嵌套。

$ cat name.py
name = "long long ago"
print(name.title())
print(name.upper())
print(name.lower())
print(name.lower().upper())
$ python name.py
Long Long Ago
LONG LONG AGO
long long ago
LONG LONG AGO

string中可以带变量,称为f-string,包含在{}之间,类似于C语言printf中的%s
f-string在python 3.6后开始支持。因此需要用python3运行。

$ cat fullname.py
first_name = "ming"
last_name = "xiao"
full_name = f"Hello {first_name} {last_name}!"
print(full_name)
print(f"Hello, {full_name.title()}!")
$ python3 fullname.py
Hello ming xiao!
Hello, Hello Ming Xiao!!
$ vi fullname.py

string中可以加入不可打印字符,如\n\t

>>> print "Just\tDo\tit!\n"
Just    Do      it!

空格的处理:

>>> language=' python '
>>> lang = ' python '
>>> lang.rstrip()
' python'
>>> lang.lstrip()
'python '
>>> lang.strip()
'python'

Number类型

分为integer和float。带小数点的都是float。Number类型支持加减乘除操作(+-*/)。
integer和float的混合操作结果为float,两个integer相除结果为float。
为增加可读性,数字中可带下划线(_),类似于Excel中的逗号(,),此特性python 3.6开始支持:

$ python3
Python 3.6.8 (default, Aug  7 2019, 08:02:28)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39.0.1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> a=1_234_567
>>> b=1_234.567
>>> a
1234567
>>> b
1234.567

多变量同时赋值:

>>> x, y, z = 0, 0.1, "ok"

常数,变量名建议全部大写:


>>> TIMEOUT=500

注释

hash mark (#)之后的内容都是注释。
写注释不仅是为自己看懂,更重要的是让别人看懂:

If you want to become a professional programmer or collaborate with other programmers, you should write meaningful comments.

注释要清晰,准确:

Writing clear, concise comments in your code is one of the most beneficial habits you can form as a new programmer.

先写注释再删胜过之前没写后面来补。

Python之禅()

The Zen of Python是编写Python代码的一系列指导原则。
输入import this查看这些原则,我把部分解读放到了原则上方的注释中:

>>> import this
The Zen of Python, by Tim PetersBeautiful is better than ugly.
# 明示胜过猜
Explicit is better than implicit.
# 简单胜过复杂
Simple is better than complex.
# 如果简单不可得,从复杂中选最简单的
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
# 可读性很重要
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
# 尽量复用代码,用函数
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
# 不要追求完美,先让其可行,再提升
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!

这里特别提一下Now is better than never,好像是Martin Fowler说的:

first make it run, then make it faster

也可以说“及时的80分胜过迟到的100”,都是这个意思。

Python Crash Course读书笔记 - 第2章:Variables and Simple Data Types相关推荐

  1. Python Crash Course读书笔记 - 第19章:USER ACCOUNTS

    允许用户输入数据 目前用户数据Topic和Entry都是通过管理站点输入的,我们希望用户可以新增和编辑数据. 允许用户输入和提交数据的Web页面称为form,在Django中可使用ModelForm. ...

  2. Python Crash Course读书笔记 - 第18章:GETTING STARTED WITH DJANGO

    Django是一个web框架.可用来构建交互式网站. 设置项目 首先需要写项目说明书(spec). 然后需要创建虚拟环境(virtual environment). 虚拟环境是一个隔离的环境,可以单独 ...

  3. Python Crash Course读书笔记 - 第16章:DOWNLOADING DATA

    本章首先探索在线公开数据源.然后介绍CSV和JSON格式数据的处理,并分别用Matplotlib和Plotly做可视化. CSV文件格式 CSV(comma-separated values)格式,正 ...

  4. Python Crash Course读书笔记 - 第15章:GENERATING DATA

    数据可视化是指通过可视化的手段探索数据,和数据分析紧密关联.通过代码来探索数据集的模式. 和显示酷炫的图片无关,而是让用户之前并不知道的数据含义和模式. Python被广泛应用于遗传学,气候研究,政治 ...

  5. 开始读Python Crash Course读书笔记

    2020年1月13日晚开始读Python Crash Cours第二版.Crash Course是速成班的意思. 简要信息如下: Python Crash Course, 2nd Edition A ...

  6. python第三章上机实践_《机器学习Python实践》读书笔记-第三章

    <机器学习Python实践>,第三章,第一个机器学习项目 以往目录:橘猫吃不胖:<机器学习Python实践>读书笔记-第一章​zhuanlan.zhihu.com 书中介绍了一 ...

  7. python基础教程读书笔记——第三章 字符串

    第三章 字符串 摘要: %s , $x , find()  , join() , split() , lower() , title() , strip() 1.字符串格式化 format = &qu ...

  8. 《Python从入门到实践》读书笔记——第五章 if语句

    <Python从入门到实践>读书笔记--第五章 if语句 1. 一个简单示例 cars = ['audi', 'bwm', 'subaru', 'toyota']for car in ca ...

  9. 《Python从入门到实践》读书笔记——第六章 字典

    <Python从入门到实践>读书笔记--第六章 字典 1. 一个简单的字典 alien_0 = {'color': 'green', 'points': 5}print(alien_0[' ...

最新文章

  1. Win7 防火墙添加端口
  2. RTOS原理及功能简介
  3. mysql数据库程序设_MySQL数据库程序设计
  4. 关于计算机英语素材,计算机专业英语相关素材.doc
  5. POJ - 3322 Bloxorz I(bfs+状态设计)
  6. 带参数的RedirectToAction
  7. 6-2 视频分解图片
  8. 实践的意义——写给图像处理算法爱好者的建议
  9. 使用treesoft下的TreeNMS管理和监控redis服务器
  10. 使用阿里云加速器 配置 Docker 镜像加速器
  11. matlab xticklabel 旋转,在Matlab中,如何实现xticklabel的旋转?转
  12. CentOS7常用工具包安装
  13. Android Logcat输出为何能自动换行输出的原因以及多\n的作用
  14. #网络流24# 餐巾计划问题
  15. python Django
  16. 微信公共平台OAuth接口消息接口服务中间件-wechat-oauth
  17. 基于Java毕业设计政府采购线上招投标平台源码+系统+mysql+lw文档+部署软件
  18. 海康三维视频融合监控软件系统免费版,支持移动侦测告警
  19. html点击出现对勾,css伪类右下角点击出现对号角标表示选中的代码
  20. 为什么大部分企业面试官都会问GMV,GMV是什么?

热门文章

  1. 聊聊阻容降压原理 和 实际使用的电路
  2. MongoDB数据库—基本操作
  3. 测高卫星Jason2 Handbook翻译(一):Introduction
  4. 动态规划初识(从dfs到dfs优化到动态规划顺推和逆推)
  5. KITTI数据真值处理
  6. Python实现商品价格监控,识破双十一的套路
  7. 远程桌面进去服务器的办法,远程重启服务器后没法链接远程桌面解决办法
  8. java获取属性工具类,Java中常用的工具类总结
  9. AVR USART接收中断程序
  10. BCG矩阵—波士顿矩阵