python学习之路 - python的基础语法

一、python基础语法

1、字面量

在代码中,被写下来的固定的值,就是字面量

常见的值类型:

  • 数字:
    • 整数(int):如10,-10
    • 浮点数(float):如13.14,-13.14
    • 复数(complex):如4+3j
    • 布尔(bool):如true,false
  • 字符串(String):由任意的字符组成,需要用双引号包围
  • 列表(List):有序的可变序列
  • 元组(Tuple):有序的不可变序列
  • 集合(Set):元序不重复集合
  • 字典(Dictionary):无序的Key-Value集合

2、注释

单行注释:以#号开头,快捷键为ctrl + /
在这里插入图片描述
多行注释:用三个引号包围,引号要用英文输入法
在这里插入图片描述

3、变量

变量是在程序运行时,能储存计算结果或者能表示值的抽象概念。就是在程序运行时,记录数据用的

定义变量的格式:变量名 = 变量值

4、数据类型

执行 type(被查看类型的数据) 即可,可以查看变量存储数据的数据类型
变量本身无类型,变量存储的数据是有类型的

5、数据类型转换

int(x):将x转换为一个整数
float(x):将x转换为一个浮点数
str(x):将x转换为字符串

注意:中文无法转换成整数类型,浮点数转换成整数会丧失精度,比如13.14转换为整数为13

6、标识符

在python中,会给变量、方法、类起名字,这些统一称为标识符
标识符是用户编程时所使用的一系列名字,用于给变量、类、方法等命名

a、标识符命名规则:
  • 内容限定:
    • 只允许出现英文、中文、数字、下划线(_)这四类元素,其余任何内容都不被允许
    • 不推荐使用中文
    • 数字不能用在开头
  • 大小写敏感:tom和Tom在python中是两个变量,要区分大小写
  • 不可使用关键字:不能使用true、false、continue、break、class、def、del、elif、except、finally、for、from、if、import、lambda、not、pass等
b、命名规范
  • 变量命名规范:
    • 见名知意:看到名字就知道变量的作用,简洁明了
    • 下划线命名法:多个单词用下划线分割,如firtst_num
    • 英文字母全小写:变量Tom最好写成tom

7、运算符

  • 算数运算符
    • +:加
    • -:减
    • *:乘
    • /:除
    • //:取整除,如11//2 = 5
    • %:取余,如9 % 2 = 1
    • **:指数,如 3 ** 3 = 27
  • 赋值运算符:
    • =,将右边的结果赋值给左边的变量
  • 复合赋值运算符:
    • +=:加法赋值运算符,如c += a等价于 c = c + a
    • -=:减法赋值运算符,如c -= a等价于 c = c - a
    • *=:乘法赋值运算符,如c *= a等价于 c = c * a
    • /=:除法赋值运算符,如c /= a等价于 c = c / a
    • %=:取模赋值运算符,如c %= a等价于 c = c % a
    • **=:幂赋值运算符,如c **= a等价于 c = c ** a
    • //=:取整除赋值运算符,如c //= a等价于 c = c // a

8、字符串拓展

a、三种定义方式
  • 单引号定义法:name = ‘我是python程序员’
  • 双引号定义法:name = “我是python程序员”
  • 三引号定义法:name = “”“我是python程序员”“”

三引号定义法中,字符串无变量接收,就是多行注释,有变量接收就是变量

b、字符串的拼接

字符串之间用 + 号拼接,此方式只支持字符串之间的拼接,如:“这是字符串第一段” + “这是字符串第二段”,无法支持字符串与数字的拼接,如:“这是无法拼接的案例” + 123456

text_str = "字符串第一段" + "字符串第二段"			这是正确写法
text_str = "这是无法拼接的案例" + 123456			这是错误写法
c、字符串格式化

%s:将内容转成字符串,放入占位位置
%d:将内容转成整数,放入占位位置
%f:将内容转成浮点数,放入占位位置

num1 = 18
num2 = 123456
#单个占位符的写法
message1 = "我是程序员,我今年%s岁" % num1
#多个占位符的写法
message2 = "我是程序员,我今年%s岁,我的电话号码为:%s" % (num1,num2)
d、格式化的精度控制

可以使用辅助符号"m.n"控制宽度和精度

  • m:控制宽度,要求是数字,如果宽度小于数字本身,则不生效
  • n:控制精度,要求是数字,会进行小数的四舍五入
  • %5d:将整数宽度控制在5位。如数字11,被设置成%5d,则会变成[空格][空格][空格]11
  • %7.2f:将总宽度控制为7位,小数点精度设置为2。如11.345,被设置成%7.2f,会变成[空格][空格]11.35,先2个空格补足宽度,再小数部分限制2位精度并四舍五入
  • %.2f:不限制宽度,只设置小数点精度为2。如11.345设置%.2f后,结果是11.35
num1 = 11
num2 = 11.345
print("num1的值是%s,将其宽度限制为5结果是%5d" % (num1,num1))
print("num2的值是%s,将其宽度限制为7,小数点限制2位,结果是%7.2f" % (num2,num2))
print("num2的值是%s,将其不限制宽度,只设置小数点精度2位,结果是%.2f" % (num2,num2))

打印结果为:
num1的值是11,将其宽度限制为5结果是   11
num2的值是11.345,将其宽度限制为7,小数点限制2位,结果是  11.35
num2的值是11.345,将其不限制宽度,只设置小数点精度2位,结果是11.35
e、快速字符串格式化

通过语法:f"内容{变量}"的格式来快速格式化
这种方式就不会限制数字的宽度和精度

name = "程序员"
age = 18
phone = 123456789
print(f"我是{name},我今年{age}岁,我的电话号码为{phone}")
f、对表达式进行格式化

表达式:一条具有明确执行结果的代码语句

print("结果为:%1d" % (1 * 1.1))				结果为1
print(f"{1 * 1.1}")							结果为1.1

9、数据输入

input(“前提提示信息”):获取键盘输入的内容

name = input("你是谁?")
print("你好,我是:%s" % name)

输出为:
你是谁?程序员
你好,我是:程序员

相关推荐

  1. Python学习

    2024-07-22 16:58:05       34 阅读
  2. Python学习-Tornado基础:数据库

    2024-07-22 16:58:05       44 阅读
  3. Python学习

    2024-07-22 16:58:05       34 阅读
  4. python学习

    2024-07-22 16:58:05       15 阅读
  5. Python学习-Django基础:请求与响应

    2024-07-22 16:58:05       44 阅读
  6. Python学习-Django基础:Admin站点

    2024-07-22 16:58:05       41 阅读
  7. Python学习-Tornado基础:初识Tornado

    2024-07-22 16:58:05       44 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-22 16:58:05       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-22 16:58:05       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-22 16:58:05       45 阅读
  4. Python语言-面向对象

    2024-07-22 16:58:05       55 阅读

热门阅读

  1. C++多继承与虚继承

    2024-07-22 16:58:05       16 阅读
  2. C++11

    2024-07-22 16:58:05       14 阅读
  3. 直播架构如何设计核心节点和边缘节点

    2024-07-22 16:58:05       15 阅读
  4. vue3SeamlessScroll实现列表的无限循环滚动

    2024-07-22 16:58:05       19 阅读
  5. Ajax学习笔记

    2024-07-22 16:58:05       14 阅读
  6. 前端面试 vue 路由权限控制

    2024-07-22 16:58:05       17 阅读
  7. Vue 3 和 SpringBoot 实现文件分片上传示例

    2024-07-22 16:58:05       16 阅读
  8. ElasticSearch-match_phrase查询

    2024-07-22 16:58:05       14 阅读
  9. 计算机视觉主流框架及其应用方向

    2024-07-22 16:58:05       21 阅读
  10. NLP基础技术

    2024-07-22 16:58:05       18 阅读
  11. Linux的shell编程

    2024-07-22 16:58:05       18 阅读
  12. 【Vue】 组件通信方式

    2024-07-22 16:58:05       13 阅读
  13. Android 各个版本兼容型问题

    2024-07-22 16:58:05       17 阅读
  14. 透彻理解Transformer模型:详解及实用示例(C#版)

    2024-07-22 16:58:05       16 阅读