Python之旅(一)——常量、变量、动态类型

标黄部分是和C语言不同的部分

Python背景知识

Python用途

  • 科学计算&数据分析
  • Web开发(搭建网站)
  • 自动化运维
  • 人工智能
  • 爬虫程序
  • 自动化测试

Python的优缺点

优点:

  • 语法言简意赅,上手容易
  • 功能强大,用途广泛
  • 生态丰富,具有海量的成熟第三方库
  • 方便调用C/C++编写的代码进行高性能/系统级 操作

缺点:

  • 执行效率较弱
  • 对于多核心并发程序支持偏弱
  • 动态类型系统对于大型项目不太友好

Python前景(钱景)

纯Python的岗位较少。

C++岗位的薪资水平更高,C++语法也更难些。

Java岗位招聘人数更多,其薪资水平较低,Java语法相对于C++也更简单一些。

Python更多的是"辅助"功能。


常量和表达式

Python打印函数不同于C语言,直接是print(),也不需要包含头文件,"语句"后面不需要加

print(1 + 2 + 4)
print(1 + 2 / 3)

与其他高级语言有很多相同之处,如常量 1、2、3,运算符/操作符 + 、/。
1 + 2 + 4就是表达式。

第二条语句打印结果是:

在这里插入图片描述

Python中 整数 / 整数 是会出现小数的,且不会四舍五入,至于末尾是5,原因是浮点数的存储规则由国际标准IEEE(电⽓和电⼦⼯程协会) 754规定,而这一规则是存在误差的。


变量与类型

变量的定义

Python中的变量,不需要在定义时显性声明,而只是依靠初始化语句,根据初始化的值的类型来确定。

a = 10
b = 5.3

变量命名的规则

  1. 硬性规则
    • 变量名必须由数字、字母、下划线表示
    • 不能以数字开头
    • 变量名不能与Python的关键字重复
    • Python中的变量名是大小写敏感的,区分大小写
  2. 软性规则
    • 变量名要有意义、有描述性
    • 可以使用多个单词来命名,当包含多个单词的时候,命名有多种规范:
      1. 驼峰命名: 除了第一个单词的首字母之外,后序每个单词的首字母都大写,如totalCount
      2. 蛇形命名: 单词之间使用下划线来分隔

变量的使用

读取变量的值

a = 10
print(a)

修改变量的值

a = 10
a = 20
print(a)

变量的类型

我们可以通过函数type() 确定一个变量的类型

a = 10
print(type(a))
print(12.5)

在这里插入图片描述

整数 int

在Python中,int 能表示的数据范围是"无穷"的。

Python的int是可以根据要表示的数据的大小,自动扩容。

因此,long、byte、short 类型在Python中是不存在的。


浮点数 float

在Python中 float 就是"双精度浮点数"。

等同于C++/Java里的double。


字符串

Python中要求使用引号把一系列的字符引起来就构成了字符串

单引号和双引号都是可以的

两种引号的意义:可以将带双引号一段话用单引号引起来,那么这句带双引号的话就是字符串内容

如果字符串同时有单引号和双引号,怎么办?

Python中还有一种字符串,使用三引号表示:‘’’ 或者 “”"(这里的引号都是英文输入法下的,显示错误了)

f = """"""My 'name' is "xiaokuer""""
c = '''My 'name' is "dakuer"'''

在这里插入图片描述

求字符串长度用到内置函数:len()

name = 'xiaokuer'
print(len(name))

在这里插入图片描述

字符串拼接

a1 = 'hello '
a2 = 'world'
print(a1 + a2)

在这里插入图片描述

我们不可以将数字和字符串混合相加,会报错!


布尔

布尔类型是一个特殊的类型,取值只有两种,True(真)和False(假)

因此,布尔类型主要用于逻辑判定。

Python中 真 True 和 假 False 首字母大写!


其他(暂不介绍)

除了上述4种类型,list、tuple、dict、自定义类型 等等。


补充:报错情况

  1. 语法错误

    在程序运行之前,Python解释器就能把错误识别出来

  2. 运行错误

    在程序运行之前,识别不了的,必须要执行到对应的代码,才能发现问题


a = 10
b = 1.2
c = 'abc'
d = True
print(type(a))
print(type(b))
print(type(c))
print(type(d))

在这里插入图片描述

为什么要有这么多类型?

  • 不同的类型,占用的内存空间是不同的

    int 默认是 4 个字节,动态扩容

    float 固定 8 个字节

    bool 一个字节就够了

    str 变长的

  • 不同的类型,对应能够进行的操作也是不同的。

    例如:int 类型可以 + - * / ,不可以使用 len

    ​ str 可以 + ,不能 - / * ,可以使用 len


动态类型

与其他如C/C++/Java中的静态类型不同

Python是一种动态类型的语言

程序运行过程中,Python的变量的类型可能会发生改变。

a = 10
print(type(a))
a = True
print(type(a))
a = 'hello'
print(type(a))

在这里插入图片描述

Python在定义变量的时候,是可以写类型的,起到一个类似声明的效果,方便程序员读代码。不过,这种声明不会引起变量类型的改变。

例如,即便让“声明”变量a为 int,其真实类型仍然是 str 类型。

a:int = 'hello'
print(type(a))

在这里插入图片描述

总结:

  • Python动态类型的写法比较灵活,提高了语言的表达能力
  • 然而,在编程中,“灵活"意味着不够"严谨”,容易出错
  • 相比之下,静态类型的语言还是更好一些的,尤其是在大型程序,多人协作开发的程序中。
  • 至于"声明",起到锦上添花的作用,主要是方便读代码的

我们通过Python变量类型的学习发现:Python的一个设计哲学:解决一个问题,只提供一种方案!
我会持续分享有关Python的博客,记录我的学习历程,希望能给大家带来更多的干货!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值