Python笔记day01 - Python入门(缩进,注释,变量,global,新手常见报错)

Python入门

2021/6/1 周二
学习内容: Python缩进,注释,变量,global,新手常见报错

刚接触Python,主要是看w3school的教材,并根据自己的情况对重点内容做的笔记,如有错误,欢迎在评论区指出,非常感谢!


一、Python 简介

Python 是一门解释型编程语言,它由 Guido van Rossum 创建,于 1991 年发布。

它用于:Web 开发(服务器端)、软件开发、数学、系统脚本。

Python 的最新主要版本是 Python 3,但是Python 2 仍然非常受欢迎。

Python 语法与其他编程语言比较:

  • Python 是为可读性设计的,与英语有一些相似之处,并受到数学的影响。
  • Python 使用新行来完成命令,而不像通常使用分号或括号的其他编程语言
  • Python 依赖缩进,使用空格来定义范围;例如循环、函数和类的范围。其他编程语言通常使用花括号来实现此目的。

python文件使用 .py 文件扩展名

二、Python 语法

1. 缩进

Python使用缩进来指示代码块,如果省略缩进,Python 会出错:
【IndentationError: expected an indented block】

空格数取决于程序员,但至少需要一个。
但是如果是在同一代码块中,必须使用相同数量的空格,否则 Python 会出错:
【IndentationError: unexpected indent】

2. 注释

注释用 #开头
Python 实际上没有多行注释的语法。
但是,由于 Python 将忽略未分配给变量的字符串文字,因此可以在代码中添加多行字符串(三引号),并在其中添加注释:

"""
This is a comment
written in 
more than just one line
"""
print("Hello, World!")

三、Python 变量

1. 创建变量

Python 与其他编程语言不同的是,变量是在为其赋值时创建的,Python 没有声明变量的命令

Python变量不需要使用任何特定类型声明,甚至可以在设置后更改其类型

字符串变量用单引号或双引号都可以

2. 变量名称

Python 变量命名规则:

  • 变量名必须以字母或下划线字符开头
  • 变量名称不能以数字开头
  • 变量名只能包含字母数字字符和下划线(A-z、0-9 和 _)
  • 变量名称区分大小写(age、Age 和 AGE 是三个不同的变量)
3. 向多个变量赋值

Python 可以在一行中为多个变量赋值:

x, y, z = "Orange", "Banana", "Cherry"

也可以在一行中为多个变量分配相同的值:

x = y = z = "Orange"
4. 字符串拼接

+”号可以用做字符串拼接,也可以用作数学运算符,但如果组合字符串和数字,会报错
【TypeError: unsupported operand type(s) for +: ‘int’ and ‘str’】

这一点不像Java会自动把数字也转为字符串,python想这样的话要自己给数字加引号。

5. 全局变量

Python中用【def 函数名():】定义函数,【函数名()】调用函数。

在函数外部创建的变量,可以被函数内部和外部使用。

如果在函数内部创建具有相同名称的变量,则该变量将是局部变量,并且只能在函数内部使用。具有相同名称的全局变量将保留原样,并拥有原始值。

x = "aaa"
print(x)

def myfunc():
  x = "bbb"
  print(x)

myfunc()
	
print(x)

#输出

aaa
bbb
aaa
6. global 关键字

通常,在函数内部创建的变量是局部变量,只能在该函数内部使用。

但也可以用 global关键字,在函数内部创建全局变量

所以也可以在函数内部,用 global引用全局变量从而关键字更改全局变量的值:

x = "aaa"
print(x)

def myfunc():
  global x
  x = "bbb"
  print(x)

myfunc()
	
print(x)

#输出

aaa
bbb
bbb

上面那个例子加一个global x,输出就不同了

三、报错信息整理

1. 缩进错误: 期望一个缩进的块
IndentationError: expected an indented block

该缩进的地方没有缩进

2. 缩进错误: 意外的缩进
IndentationError: unexpected indent

必须在同一代码块中使用相同数量的空格

3. 类型错误:不支持操作类型为整数和字符串
TypeError: unsupported operand type(s) for +: 'int' and 'str'

字符串和数字不能混用

4. 缩进错误:
IndentationError: unindent does not match any outer indentation level

用在线编译器打空格后,换行的变成了tab,新的Python语法中不支持混用tab和空格

5. 语法错误:非法语句
SyntaxError: invalid syntax

用global关键字,必须先“声明”global,再赋值,不能写成一行。

上一篇:day01


下一篇:学习day01(python自动化)