(翻译)30天学习Python👨‍💻第二天——数据类型1

731 阅读4分钟

30天学习Python第二天👨‍💻——数据类型1

介绍

在深入了解编程语言甚至人类语言的基本细节之前,我们需要理解它的术语和基本原理,并开始构建一个基本的心智模型,我们可以在需要的时候返回来参考它。

任何编程的构建模块都可以分为下面的几个部分:

  • 术语
  • 数据类型
  • 动作(功能)
  • 最佳实践

今天我花了一些时间来理解Python的一些基本术语、语法、数据类型和一些动作——在编程术语中称为函数。

数据类型

用简单的词表示数据类型是表示值的一种方式。在自然语言中,我们有字母、数字、符号作为不同类型的常用值。类似的,Python里包含下面几种基础的数据类型:

  • int (表示整数)

  • float (表示小数)

  • str (表示字符串)

  • bool (表示布尔值)

  • list

  • tuple

  • set

  • dict

  • complex (不是经常使用)

  • None (表示无值)

    这些是Python中可用的标准数据类型。要创建我们自己的数据类型,需要使用类。也可以通过导入外部库或模块来使用专用的数据类型。

在JavaScript,有下面几种数据类型:

  • number (对整数和小数都适用)

  • string

  • boolean

  • symbol

  • bigInt

  • null

  • undefined也是一种作为非基类的对象

    今天我花了些时间来理解Python的数字和字符串类型。

数值

有3种类型的数值数据类型:

  • int(存储无限大的整数)
  • float(存储浮点实数值)
  • complex(我跳过了它,因为我知道它不常用,就类似于JavaScript中的bigInt一样)

在JavaScript中,有两种数字类型,NumberBigInt

type是用于确定值或表达式类型的函数(类似于中的JavaScript中的typeof操作符)

    num = 100
    print(type(num)) # <class 'int'>

    num2 = 99.99
    print(type(num2)) # <class 'float>

    expression1 = num * 10
    print(type(expression1)) # <class 'int'>

    expression2 = num + num2
    print(type(expression2)) # <class 'float'>

在Python中,变量赋值是通过写入名称并使用=操作符赋值来完成的,而在JavaScript中,变量前面需要加varconst,或者let关键字

数学函数

有一些内置的数学函数,使我们能够轻松地计算各种数学运算

Math Functions and Constants-这个文档包含了所有的内置函数

数学函数和常量

    print(round(2.1)) # 2
    print(round(5.9)) # 6
    print(abs(-34)) # 34

后面我们会详细研究数学模块

变量

变量用来存储值,在python中,有一些变量命名的约定:

变量已经以字母(最好是小写字母)或者下划线开头,后面跟字母、数字或者下划线

Snake是用多个单词定义变量的传统方法,比如user_name(而在JavaScript中推荐使用userName

变量名是大小写敏感的

字符串

Python中的字符串是一个有序的字符序列(类似于Javascript)

    name = 'Python' # 单引号内的字符串赋值
    name2 = "Python" # 双引号内的字符串赋值
    name3 = '''This is a a very long string and supports 
            multiline statements as well''' # 字符串合并在三个单引号内
    name4 = 'Hello! \"Rockstar Programmer\"' # 带有转义字符序列的字符串
    print(type(name)) # <class 'str'>
    print(type(name2)) # <class 'str'>
    print(type(name3)) # <class 'str'>
    print(type(name4)) # <class 'str'>

字符串合并

与Javascript类似,字符串可以使用+操作符连接,它只是用来连接字符串。

    first_name = 'Mike'
    last_name = 'Tyson'
    print(first_name + ' ' + last_name) # Mike Tyson

类型转换

与隐式类型转换(又名类型强制)的Javascript不同,如果对不同类型的值进行操作,Python将抛出错误

    user_name = 'John'
    age = 40
    print(user_name + age) # TypeError: can only concatenate str (not "int") to str
    # This would work in Javscript where it would convert the result to string type

在Python中,类型需要显式转换,才能执行对不同类型进行操作

    user_name = 'John'
    age = 40
    print(user_name + str(age)) # John40
    print(type str(age)) # <class 'str'>

类似地,字符串可以转换成数字

    lucky_number = 7
    lucky_number_stringified = str(7)
    lucky_number_extracted = int(lucky_number_stringified)
    print(lucky_number_extracted) # 7

今天就到这里!仍然要保持简单和轻松了,接下来我们将继续理解其他字符串操作、内置方法和函数以及布尔和列表类型。第三天将会让你感到非常兴奋!

祝你好运!

原文链接

30 Days of Python 👨‍💻 - Day 2 - Data Types I