从零开始的Python学习之旅:笔记篇

开始的时候要注意了,新建的.py文件不能新建到venv文件夹里,因为这个是项目的虚拟环境文件。

入门篇笔记

打印-print函数

英文的括号,英文的引号,可以使用单引号或者双引号,里面放入要打印的文字。

1
2
3
4
print("")
print('')
print("hello word") # 示例
# 引号包括里面内的内容一整个被称为字符串"hello word"

字符串连接

可以把几个字符串用加号(+)连接成一个更长的再打印出来:

1
2
3
print("你好" + " 这是一句代码" + " 哈哈")

# 打印结果:你好这是一句代码哈哈

单双引号转义

如果内容本身就存在引号,就需要留意内容引号和外面包裹字符串的引号是单还是双

1
2
3
print("He said"good!"") # 错误示例
print('He said" good!"')# 应该把内外的引号区分开
print("He said' good!'")# 应该把内外的引号区分开

要是一段文字里刚好存在单引号和双引号,在字符串里的引号前面加一个反斜杠\,表明后面的引号是单纯的符号。

反斜杠\叫做转义符,加上之后python就知道把\和后面的内容一起读产生特殊的意思,在另一个笔记里有详细解释。

1
2
print("He said "Let's go!"")     # 错误示例
print("He said \"Let\'s go!\"") # 正确示例:在字符串里的引号前面加一个反斜杠 \

换行

因为python是读一行执行一行,所以不能回车换行。

1
2
3
print("第一行
第二行") # 错误示例
print("第一行\n第二行") # 正确示例\n为换行转义字符,打印出来后就会分行。在另外一个笔记内字符串中的转义字符中有详细讲解。

三引号跨行字符串

要是打印的内容非常的长,用\n换行转义字符就非常的麻烦,这里就要用到三引号,可以是三个连一起的单引号'''或者双引号""",用它包裹住文字python就会把新一行当作内容的换行,而不是代码语句的结束。

示例:

1
2
3
4
5
6
7
8
9
10
11
12
print('''君不见黄河之水天上来,奔流到海不复回。
君不见高堂明镜悲白发,朝如青丝暮成雪。
人生得意须尽欢,莫使金樽空对月。
天生我材必有用,千金散尽还复来。
烹羊宰牛且为乐,会须一饮三百杯。
岑夫子,丹丘生,将进酒,杯莫停。
与君歌一曲,请君为我倾耳听。
钟鼓馔玉不足贵,但愿长醉不愿醒。
古来圣贤皆寂寞,惟有饮者留其名。
陈王昔时宴平乐,斗酒十千恣欢谑。
主人何为言少钱,径须沽取对君酌。
五花马、千金裘,呼儿将出换美酒,与尔同销万古愁。''')

变量

赋值操作my_name = ‘浅笑安然’ ,给变量一个值。赋值后可以通过变量名获取值反复使用。

python是从上到下执行的,赋值操作应该在使用点的前面,否则会报错。

1
my_name = '浅笑安然' #赋值

如果变量值变了,又不想失去原来的变量值,可以用变量给变量赋值。因为python是从上到下执行的,拆分来看还是很好理解的,我先对my_name赋值,然后my_ID= my_name的值,也就是my_ID = '浅笑安然',第三行对my_name重新赋值,my_name = '李',因为重上往下执行的所以完全不冲突。

1
2
3
4
5
my_name = '浅笑安然'  #对变量赋值
my_ID = my_name # 用变量给变量赋值
my_name = '李' #覆盖掉这个变量的原先值
print('当前my_name的值:' + 'my_name')#可以随时用print打印出当前的值了解情况。
print('当前my_ID的值:' + 'my_ID')#可以随时用print打印出当前的值了解情况。

python命名规则

变量应该易于理解和记忆,不能出现空格以及乱七八糟的符号。

  1. 尽量bu_yao_yong_pin_yin,容易认错,但是很适合我。
  2. python在3.0版本之后支持中文变量,如:用户名 ='1',不建议容易报错。
  3. 英文变量命名,下划线命名法,字母全部小写,不同单词用下划线分隔。如: user_age
  4. 变量名是大小写敏感的,大小写是不同的变量。
  5. 变量不要占用python的关键字如:print,如果对print进行赋值,后面就不能用print进行打印了。

Python数学运算

1
2
3
"6"  #被引号包裹的是字符串
6 #没小数点的是整数
6.0 #带小数点的是浮点数

python的加减乘除分别是:

  • 加 +
  • 减 -
  • 乘 *
  • 除 /
  • 乘方 ** (如:2的三次方2**3)

导入math函数库,这是一个专门提供数学运算函数的库。

导入方法:

1
2
3
4
5
6
7
8
9
import math # 在文件第一行输入,进入import库。
math.sin(1)#简单的应用,具体的可以去math库官方文档里查看。
print(math.sin(1))#要用print打印才可以看到计算的结果。
---------------------------------------------------------------
# 或者像下面这样,先对函数进行赋值,再打印结果。
print(math.sin(1))
sin = math.sin(1)
print(sin)

注释

  • # 我是一个注释
  • 如果是多行可以全部选中然后按下键盘的win + /,就可以一键注释。撤销注释再按一次就可以了。
  • '''注释内容'''包裹也可以进行多行注释。

数据类型

解释数据类型
“hello”或 ‘hello’字符串 str
0,1,2,3…整数 int
0.2,0.3…浮点数 float
True False布尔类型 bool
None空值类型 NoneType

len(“”)函数

  • len("")函数可以计算字符串的长度。

索引

  • 字符串后面跟方括号,如: 'hello'[3]就能提取出相应位置的字符。
  • 可以把索引理解为顺序,不过索引是从0开始算的,所以如果要提取第四位字符,应该填入3

不确定某个对象类型的时候可以使用type(变量)函数,它会返回对象的类型,记得打印。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# 对字符串求长度
s = "Hello world!"
print(len(s))

# 通过索引获取单个字符
print(s[0])#获取第一个字符
print(s[len(s) - 1])#获取最后一个数字,字符串长度减一。

# 布尔类型,首字母需要大写。
b1 = True
b2 = False

# 空值类型
n = None

# type函数
print(type(s))
print(type(b1))
print(type(n))
print(type(1.5))

# 不能对布尔类型的变量使用len函数,因此下面一行会报错
# len(b1)

交互模式

终端直接输入指令。打开命令提示符cmd,然后输入python3进入交互模式。

  • 好处: 不需要创建python就可以运行,不需要print就可以看到结果。
  • 坏处:所有输入的指令都不会保存。

输入input

  • input函数可以从用户那里获取信息,用法input(),里面放字符串作为提示信息。如:input('请输入身高:'),然后用户填写回车。
  • 但是这样并不知道用户输入了什么,要用变量去获取返回的值。如:user_height= input('请输入身高:')

int函数

input函数返回的数据是字符串,不能直接用作数学计算。

int函数可以把字符串 str类型转换成整数 int类型。

float函数

可以把其它数据类型转换成浮点数。

str函数

可以把其它数据类型转换成字符串 。

1
2
3
4
5
# BMI = 体重 / (身高 ** 2)
user_weight = float(input("请输入您的体重(单位:kg):"))# 字符串转换为浮点数,因为体重不可能是整数。
user_height = float(input("请输入您的身高(单位:m):"))# 字符串转换为浮点数,因为身高米不可能是整数。
user_BMI = user_weight / (user_height) ** 2
print("您的BMI值为:" + str(user_BMI)) # 字符串才可以打印出来

条件判断True False

在 Python 中,条件语句主要由 if 语句、else 语句和 elif 语句组成,用于根据不同的条件执行不同的代码块。

  • if 语句用于检查一个条件是否成立,如果成立,则执行 if 语句后面的代码块。
  • else 语句用于在 if 语句的条件不成立时执行代码块。
  • elif 语句用于在多个条件中检查下一个条件是否成立,如果成立,则执行 elif 语句后面的代码块。

条件类型

1
2
3
4
5
6
if [条件]:                  # 条件为真时
[执行语句] # 每行前面要有缩进
[执行语句]
else# 条件为假时
[执行语句]
[执行语句]

比较运算符

  • 等于号==
  • 不等号!=
  • 大于号>
  • 大于等于号>=
  • 小于号<
  • 小于等于号<=

案例

1
2
3
4
5
6
mood_index = int(input("对象今天的心情指数是:"))
if mood_index >= 60: #值大于等于60为真
print("恭喜,今晚应该可以打游戏,去吧皮卡丘!")
print("∠( ᐛ 」∠)_")
else: # mood_index < 60,值小于60为假
print("为了自个儿小命,还是别打了。")

嵌套条件语句

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
if [条件一]:                  # 满足条件一时,判断条件二
if [条件二]: # 满足条件二时,返回执行语句。
[执行语句] # 一次缩进约四个空格
[执行语句]
else
[执行语句]
[执行语句]
----------------------------------------------------------------------------
if [条件一]: # 满足条件一时,判断条件二 。不满足时,返回语句C。
if [条件二]: # 满足条件二时,返回执行语句,不满足时返回语句B。
[执行语句A] # 一次缩进约四个空格
else
[执行语句B]
else
[执行语句C]

----------------------------------------------------------------------------
if [条件一]:
[执行语句A]
elif [条件二]:
[