Python编程:从入门到实践(第3版) (ituring.com.cn)
书中的代码可以在这个网址中下载
2.1
.py代表一个Python程序,vscode是编译器,编译器会使用Python解释器运行Python文件,Python解释器会读取整个程序,比如看到print()方法时候,会将括号中的内容打印出来。
2.2 变量
message="hello python"
print(message)
这里我们添加了一个名为message的变量(variable),每个变量指向一个值(value),也就是与变量相关的信息。
第一行代码中将变量message与文本hello python关联起来,第二行代码将 与message相关联的值打印出来。
程序中可以随时修改变量的值
2.2.1变量的命名与使用
规则:
- 变量名只能包含字母、数字、下划线 。可以字母或下划线打头,不可以数字打头。
- 变量名不能包含空格。如果需要分隔,可以使用下划线。
- 不要使用Python关键字或者方法作为变量名,比如说print。
- 变量名最好简短又有描述性,比如name比n好。
- 慎用小写字母l和大写字母O,容易认错成1和0。
- 目前最好用小写字母命名,因为某些大写字母在变量名中会有特殊含义。
2.2.2 命名错误的提示
变量名写错成mesage,运行程序后,会提示错误信息,比如在哪行出错,出错的原因。
名称错误一般是两种情况:
- 使用变量前忘记赋值
- 输入变量名时拼写不正确
我们可以将第二行的mesage修改成message,也可以将第一行的message修改成mesage。只要命名一致,程序就可以运行。
2.2.3 理解变量
变量可以当做用于存储值的盒子,被赋值的标签,也可以说变量指向特定的值。
动手试一试
#2.1
news="have a good day"
print(news)
#2.2
news="good night"
print(news)
news="work hard"
print(news)
2.3 字符串
首先介绍一下,Python有多种数据类型,主要可分为以下几大类:
数值类型 :
- 整数(int):用于表示整数,没有小数部分,可以是正数、负数或零.
- 浮点数(float):用于表示带有小数部分的数字,例如`3.14`、`-2.5`等。浮点数在计算机中以二进制形式存储,可能存在精度问题。
- 复数(complex):由实数部分和虚数部分组成,例如`3 + 4j`,其中`3`是实数部分,`4`是虚数部分,`j`表示虚数单位。
序列类型 :
- 字符串(str):由字符组成的不可变序列,用于表示文本数据。可以使用单引号、双引号或三引号来创建字符串,例如`'hello'`、`"world"`、`'''Python'''`。字符串支持多种操作,如索引、切片、拼接等。
- 列表(list):是一种可变的有序序列,可以包含不同类型的元素,用方括号表示,例如`[1, 'apple', 3.14]`。列表支持添加、删除、修改元素等操作,是Python中非常常用的数据类型。
- 元组(tuple):与列表类似,但元组是不可变的,用圆括号表示,例如`(1, 'apple', 3.14)`。元组一旦创建,就不能修改其元素,常用于存储不可变的数据。
- 范围(range):表示一个不可变的数字序列,通常用于循环中指定循环次数。可以使用`range(start, stop, step)`函数创建,例如`range(0, 10, 2)`表示从0开始,以2为步长,到10(不包括10)的数字序列。
映射类型 :
- 字典(dict):是一种可变的键值对集合,用于存储和查找数据。用花括号表示,例如`{'name': 'John', 'age': 30}`,其中`name`和`age`是键,`John`和`30`是对应的值。字典中的键必须是唯一的、不可变的,而值可以是任意类型。
集合类型:
- 集合(set):是一个无序的、不包含重复元素的集合,用花括号或`set()`函数创建,例如`{1, 2, 3}`或`set([1, 2, 3])`。集合支持交集、并集、差集等数学运算,可用于去重和集合操作。
布尔类型:
- 布尔(bool):只有两个取值`True`和`False`,用于表示逻辑真和假,通常用于条件判断和逻辑运算。例如,比较表达式`3 > 2`的结果为`True`,`2 == 3`的结果为`False`。
其他类型 :
- NoneType:表示空值或无值,只有一个取值`None`。常用于表示变量没有赋值,或者函数没有返回值等情况。
!用引号引起的都是字符串。字符串就是一系列字符。引号可以是双引号,也可以是单引号。
last_name="you"
full_name=f"{first_name}{last_name}"
print(full_name)
2.3.1 使用方法修改字符串的大小写
name="good night"
print(name.title())
方法是Python对数据执行的操作,在name后加点 . 让Python对name变量执行title()方法指定的操作。
各种方法后面都跟着括号(),()中一般是方法需要的额外的信息。
比如说print(name.title())
title()函数方法不需要额外信息,所以是空的。
uper()方法全大写,lower()方法全小写。
2.3.2 在字符串中使用变量
last_name="you"
full_name=f"{first_name}{last_name}"
print(full_name)
f字符串,f是format(设置格式 )的简写,将花括号内变量替换成 变量的值。
f字符串也可以利用与变量的方法来创建新的消息。
print(f"hello,{full_name.title()}")
2.3.3 使用制表符或换行符添加空白
制表符符号 \t ,换行符号\n , 可以同时多次使用。
2.3.4删除空白
在终端运行会更明显
win+R 输入cmd------输入python
rstrip()方法是删除字符串右端的空白。
lstrip()方法是删除字符串左端的空白。
strip()方法是删除字符串两端的空白。
方法不会改变原始的字符串。
只有将news.rstrip()方法赋值给news时,再次输出的结果是没有右端空白的。
2.3.5 删除前缀
删除RUL地址中的“https://”前缀,使用removeprefix()方法,括号里写要删除的内容。
单引号双引号都可以。
2.3.6
因为英文中会使用字母右上角的撇号,跟单引号相似,所以可以音量避免使用单引号。
动手试试
#2.3
name="eric"
msg=f"Hello {name.title()},would you like to learn some Python today?"
print(msg)
#2.4
name = "eric"
print(name.lower())
print(name.upper())
print(name.title())
#2.5
print('Albert Einstein once said, "A person who never made a mistake')
print('never tried anything new."')
#2.6
famous_person = "Albert Einstein"
message = f'{famous_person} once said, "A person who never made a mistake never tried anything new."'
print(message)
#2.7
name = "\tEric Matthes\n"
print("Unmodified:")
print(name)
print("\nUsing lstrip():")
print(name.lstrip())
print("\nUsing rstrip():")
print(name.rstrip())
print("\nUsing strip():")
print(name.strip())
#2.8
print("Unmodified:")
print(name)
print("\nUsing lstrip():")
print(name.lstrip())
print("\nUsing rstrip():")
print(name.rstrip())
print("\nUsing strip():")
print(name.strip())
2.4 数
2.4.1 整数(int)
python可以对整数进行加减乘除的运算
num1= 2
num2= 3
num3=num1+num2
num4=num2-num1
num5=num1*num2
num6=num2/num1
print(num1,num2,num3,num4,num5,num6)
print(f"{num1}\n{num2}\n{num3}\n{num4}\n{num5}\n{num6}")
乘方** 和多种运算
2.4.2 浮点数
带小数点的都可以叫浮点数。
2.4.3
任意两个数相除,结果总是浮点数,哪怕这俩数字是整数且能整除
如果一个数是整数,一个是浮点数,结果也总是浮点数。只要有一个浮点数,结果就总是浮点数。
2.4.4 数中的下划线
数字中的下划线不会打印出来,下划线可以随意写,既适用于整数也适用于浮点数。
2.4.5同时给多个变量赋值
同时给x,y,z赋初始值,值为0。只要变量数和值的个数相同,就能正确的一一对应关联起来。
2.4.6 常量
常量就是不会变的变量
一般使用全大写
动手试试
#2.9
print(0 + 8)
print(10 - 2)
print(2 * 4)
print(16 / 2)
#2.10
favorite_number = 21
message = f"我最喜欢的数字是 {favorite_number}。"
print(message)
2.5.2
注释 #
#号后面的内容会被python解释器忽略。