Python编程:变量与基本数据类型
为了给AI学习打下基础,也因为Python是一个理科学生必备的技能之一,最近准备学习Eric Matthes的Python编程:从入门到实践。作为Python学习的Bible,就像c++ primer之对于c+,这本书不应该只读一次。之前学习c++的时候,到了后期,一个练习敲几千行代码,debug的时间比写代码的时间都长。最后分模块反复检查,都会发现是一个小小的语法错误导致整个程序行不通。而这些小小的语法很多都是c++ primer中被忽略的一句话。Python语法比c++简单了许多,但逻辑都是一样的。
这本书分为语法和项目两个部分。前十一章是语法,接下来有三个项目——外星人入侵、数据可视化和web应用程序。本文主要对语法部分中的变量与数据类型进行总结。
变量
变量是对一块内存区域取的名字,内存中可以存放不同的数据。
>>>message = "Hello Python world!"
>>>print(message)
Hello Python world!
变量命名规则
- 变量名只能包含字母、数字和下划线。变量名可以字母或下划线打头,但不能以数字打头
- 变量名不能包含空格,但可使用下划线来分隔其中的单词
- 不要将 Python 关键字和函数名用作变量名,即不要使用 Python 保留用于特殊用途的单词
- 变量名应既简短又具有描述性
- 慎用小写字母 l 和大写字母 O ,因为它们可能被人错看成数字 1 和 0
字符串
字符串就是一系列字符。可以用" "或‘ ’表达。这种灵活性让你能够在字符串中包含引号和撇号。
"This is a string."
'This is also a string.'
使用方法修改字符串的大小写
>>>name = "ada lovelace"
>>>print(name.title())#首字母大写
Ada Lovelace
>>>print(name.upper())#全大写
ADA LOVELACE
>>>print(name.lower())#全小写
ada lovelace
在 print() 语句中,方法 title() 出现在这个变量的后面。 方法 是 Python 可对数据执行的操作。
合并(拼接)字符串
Python 使用加号( + )来合并字符串。
>>>first_name = "ada"
>>>last_name = "lovelace"
>>>full_name = first_name + " " + last_name
>>>print(full_name)
ada lovelace
使用制表符或换行符来添加空白
在字符串中添加制表符,可使用字符组合 \t;在字符串中添加换行符,可使用字符组合 \n。
>>>print("\tPython")
Python
>>>print("Languages:\nPython\nC\nJavaScript")
Languages:
Python
C
JavaScript
删除空白
要确保字符串末尾没有空白,可使用方法 rstrip(); 你还可以剔除字符串开头的空白,或同时剔除字符串两端的空白。为此,可分别使用方法 lstrip() 和 strip()。然而,这种删除只是暂时的。要永久删除这个字符串中的空白,必须将删除操作的结果存回到变量中。
>>>favorite_language = 'python '
>>>print(favorite_language)
'python '
>>>print(favorite_language.rstrip())
'python'
>>>print(favorite_language)
'python '
数字
浮点数
Python将带小数点的数字都称为浮点数。需要注意的是,浮点数运算结果包含的小数位数可能是不确定的。
3 * 0.1
0.30000000000000004
一个小tip:
在 Python 2 中,整数除法的结果只包含整数部分,小数部分被删除。请注意,计算整数结果时,采取的方式不是四舍五入,而是将小数部分直接删除。若要避免这种情况,务必确保至少有一个操作数为浮点数,这样结果也将为浮点数。
使用函数 str() 避免类型错误
age = 23
message = "Happy " + age + "rd Birthday!"
上面的代码中,Python 知道,这个变量表示的可能是数值 23 ,也可能是字符 2 和 3 。因此会出现错误:
TypeError: Can't convert 'int' object to str implicitly
像上面这样在字符串中使用整数时,需要显式地指出你希望 Python 将这个整数用作字符串。为此,可调用函数 str() ,它让 Python 将非字符串值表示为字符串。
>>> age = 23
>>> message = "Happy " + str(age) + "rd Birthday!"
Happy 23rd Birthday!
注释
编写注释的主要目的是阐述代码要做什么,以及是如何做的。这是有极大意义的,它可以提升代码可读性,让团队的其他成员读得懂你的代码,也让你在一段时间以后可以看懂自己的代码。
在 Python 中,注释用 # 标识。#后面的内容都会被 Python 解释器忽略。另外,可用**ctrl+/**快捷键对代码进行注释。