首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【0基础学Python】基础语法Part1

【0基础学Python】基础语法Part1

作者头像
Skrrapper
发布2025-03-10 08:34:04
发布2025-03-10 08:34:04
1660
举报
文章被收录于专栏:技术分享技术分享

第一个python程序

代码语言:javascript
复制
print(1+2-3)
print('hello world!')
print(1+2/3)

熟悉 C / Java 的同学可能认为, 2 / 3 结果为 0 (小数部分被截断). 但是在 Python 中得到的结果则是 一个小数. 更符合日常使用的直觉。

变量和类型

python无需声明变量类型,会自动确定你所写的变量的类型。

变量的语法

(1)定义变量
代码语言:javascript
复制
a = 10

创建变量的语句非常简单, 其中 a 为变量名.

  • 当我们创建很多个变量的时候, 就可以用名字来进行区分.
  • = 为赋值运算符, 表示把 = 右侧的数据放到 = 左侧的空间中.

遵守硬性规则(务必遵守)

  • 变量名由数字字母下划线构成.
  • 数字不能开头.
  • 变量名不能和 “关键字” 重复.
  • 变量名大小写敏感.
  • num 和 Num 是两个不同的变量名.

除了以上规则,应尽量变量名有意义化,规范化,使用学习命名方法。

使用变量
  • 读取变量
代码语言:javascript
复制
a = 10
print(a)
  • 修改变量
代码语言:javascript
复制
a = 20
print(a)

在 Python 中, 修改变量也是使用 = 运算, 看起来和定义变量没有明显区别.

变量的类型

在python中有必要介绍一下变量类型有哪些。

整数

代码语言:javascript
复制
a = 10
print(type(a)) # type 和 print 类似, 也是 python 内置的函数. 可以使用 type 来查看一个变量的类型.

注意: 和 C++ / Java 等语言不同, Python 的 int 类型变量, 表示的数据范围是没有上限的. 只要内存足够大, 理论上就可以表示无限大小的数据.

  • 浮点型(小数)
代码语言:javascript
复制
a = 0.5

注意: 和 C++ / Java 等语言不同, Python 的小数只有 float 一种类型, 没有 double 类型. 但是实际上 Python 的 float 就相当于 C++ / Java 的 double, 表示双精度浮点数.

  • 字符串
代码语言:javascript
复制
a = 'hello'
print(type(a))

使用 ’ ’ 或者 " " 引起来的, 称为 字符串. 可以用来表示文本.

注意: 在 Python 中, 单引号构成的字符串和双引号构成的字符串, 没有区别. ‘hello’ 和 “hello” 是 完全等价的.

可以使用len函数来获取字符串长度。

代码语言:javascript
复制
a = 'hello'
print(len(a))

可以使用+针对两个字符串进行拼接。

代码语言:javascript
复制
a = 'hello'
b = 'world'
print(a+b)
  • 布尔类型

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

布尔类型也是数学上的一个概念. 我们初中就学过一个概念叫做 “命题” , 进一步的就可以判定命题的真假.

代码语言:javascript
复制
a = True
print(type(a))
b = False
print(type(b))

除了上述基本数据类型以外,还有其他较为复杂的数据类型以及自定义类型,后续将会介绍。

为什么要有这么多类型

  • 类型决定在内存中占据的空间
  • 类型决定其对变量能做什么样的操作
  • 对变量进行归类

动态类型

在 Python 中, 一个变量是什么类型, 是可以在 “程序运行” 过程中发生变化的. 这个特性称为 “动态类型” .

代码语言:javascript
复制
a = 10
print(type(a))
a = 'hello'
print(type(a))
# 在程序执行过程中, a 的类型刚开始是 int, 后面变成了str

动态类型特性是一把双刃剑。

  • 对于中小型程序, 可以大大节约代码量(比如写一段代码就可以同时支持多种类型).
  • 对于大型程序, 则提高了模块之间的交互成本.

输入输出

输入:print(hello)

输出:

代码语言:javascript
复制
num=0
num=input('请输入一个整数:')

input的参数可有可无,当作提示信息

input的返回值就是用户输入的内容,类型是字符串

根据第二点,如果两个输入内容相加,则是字符串拼接而不是算术运算。如果需要算术运算,则应该转换类型

代码语言:javascript
复制
a = input('请输入第一个整数: ')
b = input('请输入第二个整数: ')
a = int(a)
b = int(b)
print(f'a + b = {a + b}')

使用 f 作为前缀的字符串, 称为 f-string, 里面可以使用 { } 来内嵌一个其他的变量/表达式(用于混合字符串和变量)

运算符

算术运算符
  • **:求平方
  • //:取整除法,整数除以整数,结果还是整数(舍弃小数部分,向下取整)
关系运算符
  • 关系符合返回True,不符合返回False
  • 关系运算符除了整数/浮点数的比较,还可以对字符串进行比较,按照字典序

关于字典序: 想象一个英文词典, 上面的单词都是按照字母顺序排列. 如果首个字母相同, 就比较第二个字母. (就 比如著名单词 abandon). 我们认为一个单词在词典上越靠前, 就越小. 越靠后, 就越大.

  • 浮点数不能使用和==判定相等,因为不精准
逻辑运算符
  • and:并且。 两侧操作数均为 True, 最终结果为 True. 否则为 False. (一假则假)
  • or:或者。 两侧操作数均为 False, 最终结果为 False. 否则为 True. (一真则真)
  • not:逻辑取反。操作数本身为 True, 则返回 False. 本身为 False, 则返回 True.

注意:

  • a<b and b<c等价于a<b<c
  • 短路求值:对于 and, 如果左侧表达式为 False, 则整体一定为 False, 右侧表达式不再执行.;对于 or, 如果左侧表达式为 True, 则整体一定为 True, 右侧表达式不再执行.
赋值运算符
  • =
  • 复合赋值运算符:+= -= *= /= %= a+=1 等价于 a=a+1,其他同理。 但是不支持自增自减

数据结构

[] {2,3,2}

定义函数

文件

如果左侧表达式为 False, 则整体一定为 False, 右侧表达式不再执行.;对于 or, 如果左侧表达式为 True, 则整体一定为 True, 右侧表达式不再执行.

赋值运算符
  • =
  • 复合赋值运算符:+= -= *= /= %= a+=1 等价于 a=a+1,其他同理。 但是不支持自增自减
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-03-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第一个python程序
  • 变量和类型
    • 变量的语法
      • (1)定义变量
      • 使用变量
      • 变量的类型
    • 为什么要有这么多类型
    • 动态类型
    • 输入输出
    • 运算符
      • 算术运算符
      • 关系运算符
      • 逻辑运算符
      • 赋值运算符
      • 赋值运算符
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档