Python3 变量和简单数据类型

逆流者 2020年10月29日 123次浏览

变量

Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。

等号(=)用来给变量赋值。

等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。

message = "hello python world!"
print(message)

message = "python 改变世界"
print(message)

运行结果:

hello python world!
python 改变世界

变量命名

  • 变量名只能包含字母、数字、下划线, 不能以数字开头
  • 变量名不能包含空格, 以下划线分割不同单词
  • 不要将Python关键字和函数名用作变量名
  • 变量名应即简短又具有描述性
  • 慎用小写字母l和大写字母O, 可能会看作1和0

字符串

字符串用单引号或双引号

'单引号字符串'
"双引号字符串"

灵活使用:

'单引号字符串, 可以包含"双引号"'
"双引号字符串可以包含单'引号'"

修改字符串大小写

name = "ada lovelace"
# 每个词首字母大写
print(name.title())
# 转成大写
print(name.upper())
# 转成小写
print(name.lower())

运行它:

Ada Lovelace
ADA LOVELACE
ada lovelace

合并(拼接)字符串

first_name = "ada"
last_name = "lovelace"
full_name = first_name + " " + last_name
print(full_name)

运行它:

ada lovelace

在字符串中可直接使用换行符或制表符

  • 换行符 \n
  • 制表符 \t

删除空白

rstrip() 去除末尾的空白

favorite_language = ' python java '
print(favorite_language.rstrip())

运行结果:

 python java

数字

整数

整数 加、减、乘、除

>>> 2 + 3
5
>>> 3 - 2
1
>>> 2 * 3
6
>>> 3 / 2
1.5

乘方运算

>>> 3 ** 2
9
>>> 3 ** 3
27
>>> 10 ** 4
10000

浮点数

>>> 0.1 + 0.1
0.2
>>> 0.2 + 0.2
0.4
>>> 2 * 0.1
0.2
>>> 2 * 0.2
0.4
>>> 0.2 + 0.1
0.30000000000000004
>>> 3 * 0.1
0.30000000000000004

浮点数计算会有精度问题, 后面会有处理多位小数的方式

使用函数str()避免类型错误

字符串直接拼接数字会有类型错误

age = 27
print("年龄:" + age)

运行它:

Traceback (most recent call last):
  File "/Users/wushanghui/Documents/code/codechina/python3-learn/base/name.py", line 15, in <module>
    print("年龄:" + age)
TypeError: can only concatenate str (not "int") to str

使用str()函数来避免这种问题

age = 27
print("年龄:" + str(age))

正确结果:

年龄:27

str()可以把数字转成字符串, 字符串可以直接拼接

注释

# 这是一个单行注释
"""文档注释, 用来注释类以及函数"""

Python之禅

编写处优秀代码的指导原则

在python终端会话中查看Python之禅

>>> import this
The Zen of Python, by Tim Peters # 作者

Beautiful 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!
命名空间是一个很棒的主意-让我们做更多这些吧!

参考资料:
https://www.runoob.com/python3/python3-data-type.html


Python3 目录

  1. Python3 教程
  2. Python3 变量和简单数据类型
  3. Python3 列表
  4. Python3 操作列表
  5. Python3 if 语句
  6. Python3 if 字典
  7. Python3 用户输入和while循环
  8. Python3 函数
  9. Python3 类
  10. Python3 文件和异常
  11. Python3 测试代码
  12. Python3 使用matplotlib绘制图表
  13. Python3 使用Pygal生成矢量图形文件
  14. Python3 使用csv模块处理CSV(逗号分割的值)格式存储的天气数据
  15. Python3 处理JSON格式数据(制作交易收盘价走势图)
  16. Python3 使用API