Python 基础学习 00 01 基础语法规则

00 01 基础语法规则 前言

  • 此专栏笔记是个人学习 Python 过程中的个人笔记,记录方式主要以个人习惯为主,记录内容会包括个人学习 Python 中的知识点,以及使用过程中的遇到的问题记录。如果有大佬偶然看见,有错误or不当之处,若顺手的话,请及时指正,感谢🙏🙏🙏。不定期更新。
  • 本篇笔记记录了使用 Python 时的一些基础语法规则,注释,缩进,输入输出等基本语法规则


一、Python 的注释

  Python 的注释有单行注释和多行注释。
  注释是不被执行的,不是写给机器的,而主要是给人看的,说明某段代码,某段程序的作用,防止时间长了,编写者忘记这段代码的意义,或者是给别人看代码时,让别人能理解代码。

1.1 单行注释

  Python 的单行注释用 # 开头表示,只能在一行内写注释,不能换行,适合少量注释。
示例代码

# 这是一句注释,放在一行的开头,但是后面就不能写程序文件要执行的代码
# 输出打印 Hello Python World!
print("Hello Python World!")  # 这是一句注释,可以放在一行代码结束的末尾
# 单行注释可以放在一行的开头或者一行代码的末尾,但不能放在代码的中间

运行结果

Hello Python World!

1.2 多行注释

  Python 的多行注释用三个单引号(或者双引号)括起来,一般用单引号居多,可以在引号的范围任意换行写注释,没有约束。
  注意:
  1. 单引号和双引号不可以任意配对,只能用单引号开始,单引号结束,比如用单引号开始,双引号结束是不可以的,
  2. 引号是成对出现的,即注释开始之前3个引号,注释结束之后3个引号
示例代码

'''  用单引号表示
这是第一行注释
这是第二行注释
这是第三行注释
'''
print("Hello Python World!")
"""  用双引号表示
这是第一行注释
这是第二行注释
这是第三行注释
"""

运行结果

Hello Python World!

二、Python 的代码结构

2.0 语句划分

  Python 的语句不需要以分号 “;” 结尾,代码打完即语句结束,不需要像 C/C++ 中那样用分号 “;” 来确定。

2.1 缩进

  Python 的最大特色就是用缩进来表示代码块,不像 C/C++ 那样使用大括号 {} 来表示代码块。因此,在 Python 中,必须严格执行缩进,来规范代码,保证代码逻辑正确。
  注意:
  1. 同一缩进表示同一个代码块,若同一个代码块使用不同的缩进,则程序执行的结果会与本来设计好的不一样
  2. 何为代码块:当程序语句以英文冒号 ‘:’ 结尾时,此时采用同一个缩进的语句视为一个代码块
  3. 一个缩进所用的空格是可变的,但一般情况下,一个缩进 = 4 个空格
  4. Python是严格区分大小写的
示例代码:要求是执行 if 语句的代码,不执行 else 下面的语句。

# 严格执行缩进
if True:
    print ("True")
    print (1)
else:
    print ("False")
    print (2)  # 有缩进
# 缩进不统一
if True:
    print ("True")
    print (1)
else:
    print ("False")
print (2)  # 没有缩进

运行结果

# 严格执行缩进的结果
True
1
# 缩进不统一的执行结果
True
1
2
# 因为 print(2) 的缩进不同,一个有缩进,一个无缩进

PS: 有时候缩进不严格,程序都跑不下去,就直接报错

2.2 多行语句

  C/C++ 中,一行写一条语句,因此也说一行语句,一行语句的结束是以分号 “;” 为标志,一行语句的末尾如果没有分号,则会报错,但是也不能随意将一行语句拆分成多行语句。而 Python 中则没有分号这个规则, 一条语句的结尾不用加什么符号,就可以直接结束。
  Python 通常情况下一行写一条语句,if 语句过长,则需要分成多行去写,此时我们可以用反斜杠 “\” 来实现多行语句。
示例代码

total = appples + \
        peachs + \
        watermelons

  在 [ ],( ),{ } 中包括的代码,需要多行书写时,不用反斜杠 “\” 来实现多行,直接 Enter 就可以。

2.3 空行

  空行不是 Python 中规定的语法,而是个人书写代码时的一个习惯,在代码中插入空行,Python 解释器执行的时候,也不会报错。
  使用空行,可以用来分隔不同含义或者功能的代码,或者用来分隔不同函数,自定义多个函数之间也可以用空行来分隔,引入第三方库的代码和其他代码可以用空行来分隔。
  使用空行,便于理解代码的结构,以及长时间不看这部分代码,忘记这部分代码的逻辑 & 功能,配合注释,也可以在极短时间内看懂代码,也就是说空行也是起到了一部分注释的作用。

  在示例的代码中就可以看到使用空行的例子


三、Python 的输入输出

3.1 输出函数 print()

  print输出函数在 Python 中的定义如下:

def print(self, *args, sep=' ', end='\n', file=None): # known special case of print
    """
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
    
    Prints the values to a stream, or to sys.stdout by default.
    Optional keyword arguments:
    file:  a file-like object (stream); defaults to the current sys.stdout.
    sep:   string inserted between values, default a space.
    end:   string appended after the last value, default a newline.
    flush: whether to forcibly flush the stream.
    """

 解释一下 print() 函数里参数的含义

参数含义
self表示类名,一般指当前类,一般不用,可忽略,不用管
*args表示可变参数,可以多个,一般表示我们要输出的数据,用,隔开多个变量
sep表示输出多个数据时,多个数据之间的间隔用什么表示,默认是空格,表示形式:sep = " "
end表示print()函数执行完毕后,以什么格式结尾,默认是换行,表示形式:end = ‘\n’
file表示文件名称,默认是 None,与 “文件” 那块的知识配合

示例代码

num1: int = 31
num2 = 32
name = '升升'

# 默认值
print(num1,num2,name)
print('aaa')
'''运行结果是:
31 32 升升
aaa
'''

# 修改 sep 的值 改为 __
print(num1,num2,name,sep = '__')
print('aaa')
'''运行结果是:
31__32__升升
aaa
'''

# 修改 end 的值 改为 ++
print(num1,num2,name,sep = '__',end = '++')
print('aaa')
'''运行结果是:
31__32__升升++aaa
'''

取消print结束换行: 将end = ‘\n’ 改为 end = ‘’,即在末尾加上 end = ‘’
  如果要打印输出某段文字,这段文字用单引号或者双引号括起来。
  如果要输出的文字中含有单引号或者双引号,在前面加反斜杠 ‘\’ 即可。如果是使用双引号括起来,文字中有单引号,则可不用反斜杠 ‘\’;如果是使用单引号括起来,文字中有单引号,就必须使用单斜杠了;反之亦然。

print(' I\'m single1.')
print(" I'm single2")
''' 运行结果
I'm single1.
I'm single2.
'''

3.2 输入函数 input()

  • Python 中获取键盘输入的数据的方法是使用 input() 函数
  • input()的小括号中放入的是,提示信息,用来在获取数据之前给用户的一个简单提示
  • input()在从键盘获取了数据以后,会存放到等号右边的变量中
  • input()会把用户输入的任何值都作为字符串来对待,即给等号右边的变量赋的值为字符串,若要使用其他类型,则需要转换数据类型 (后面的某个文章会说)
  • input函数执行时,当输入完内容后,程序并没有执行完毕,一直处于等待状态,只有当按下回车键时,才表示input ( ) 函数执行完毕,才会执行后续的代码。

示例代码

input("请输入:");
print ("你输入的内容是: ", str)
# 运行结果
请输入:Hello Python!
你输入的内容是:  Hello Python!

3.3 格式化输出函数 format()

3.3.1 % 输出

  % 输出与输入的格式化与 C/C++ 中的用法一样,但在 Python 中不推荐使用
常用几个 % 格式化输出代码

代码含义
%c输出字符
%s输出字符串
%d输出十进制带符号整数
%o输出八进制带符号整数
%x输出十六进制带符号整数
%f输出浮点数

示例代码

num1 = 20
num2 = 30
print('num1=%d, num2=%d' %(num1, num2))

运行结果
num1=20, num=30

3.3.2 format() 输出

  • format()它增强了字符串格式化的功能。
  • 基本语法:{:格式说明}.format(要输出的变量)

示例代码

# 转化为百分比并保留两位小数
print('百分比:{:.2%}'.format(0.555555))
# 保留两位小数
print('保留两位小数:{:.2}'.format(0.555555))

运行结果
百分比:55.56%
保留两位小数:0.56

具体的使用可以参考这个博客:python的三种输出格式

四、标识符的命名规则与规范

  标识符主要是作为变量、函数、类、模块以及其他对象的名称。
1. 定义合法标识符的规则:
 1. 组成成分:数字、字母、下划线,注意,不能以数字作为标识符的开头;
 2. 严格区分大小写,num 和 Num 是两个不同的标识符
 3. 不能使用 Python 中的关键字作为标识符, 可以通过 keyword模块中的 kwlist属性查看 Python 中的关键字

import keyword
print(kelist)
# 运行结果
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

Python中的关键字

FalseNoneTrueandas
assertasyncawaitbreakclass
continuedefdelelifelse
exceptfinallyforfromglobal
ifimportinislambda
nonlocalnotorpassraise
returntrywhilewithyield

2. 标识符的命名方法
  标识符的命名要做到见名知意,不然时间一长,或者别人看你的代码时,甚至,由于编写一篇代码时间过长,变量太多,不知道这个标识符是表示什么的了,那就不好玩了。下面是几种大家都比较认可的一些命名方法。

  1. 小驼峰命名法: 第一个单词的首字母小写,以后的每个字母的首字母大写
    eg:userNameAndPassword
  2. 大驼峰命名法: 每个单词的首字母大写
    eg:userNameAndPassword
  3. 下划线命名法: 单词之间使用下划线连接
    eg:user_name_and_password

注意:

  1. 一般情况下,在 Python 中,变量、函数、模块的标识符用下划线命名法, 类的标识符用大驼峰命名法
  2. 标识符不能以下划线开头
  3. 标识符不能是关键字

五、变量的声明与赋值

变量的声明: Python中的变量可以存储不同的数据类型,不需要提前声明变量的数据类型,这与 C/C++ 语言不一样,因此,Python 中每种数据结构都有不同且严格的数据类型表示形式。
变量的赋值:
 语法规则: 变量名 = 数据
   表示把右边的数据赋值给 = 左边的变量名,等号 = 表示赋值,与数学意义上的等号意义不同,数学意义上的等号用两个 连在一起的等号 == 表示。
具体应用下面简单介绍一下,更多的内容会在接下来 Python 基础学习 01 数据类型 部分
示例代码

# 简单赋值
num = 1
name = "shengsheng"

# 多个变量赋值
  # 给多个变量赋同一个值
  a = b = c = 20;
  # 给不同变量赋不同值 变量之间用逗号隔开,数据之间用逗号隔开
  x,y = 21,22
  
# 打印出来
print(num,name,a,b,c,x,y)

运行结果

1 shengsheng 20 20 20 21 22

总结

   本篇笔记主要记录了 Python 代码编写的一些基础知识,在我看来,学习任何一门语言之前,先了解了他的这些东西,再去深入学习他的数据类型,语句结构,函数,等方面的东西,会比较好,当然,最后一部分关于变量的说法, 各个语言大同小异,会有些许不同,但是大部分都是一样的。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值