【人工智能学习路线(一)】学习笔记——Python 编程基础入门

📅 2026/8/1 19:46:35 👁️ 阅读次数 📝 编程学习
【人工智能学习路线(一)】学习笔记——Python 编程基础入门

学习笔记——Python 编程基础入门

      • 一、基本数据类型
          • (一)整型
          • (二)浮点型
          • (三)布尔型
          • (四)运算符
          • (五)字符串
          • (六)类型转换
      • 二、集合类型
          • (一)列表(list)
          • (二)元组(tuple)
          • (三)集合(set)
          • (四)字典(dict)
      • 三、三种决策结构
          • (一)顺序结构
          • (三)循环结构
      • 四、小考核

一、基本数据类型

(一)整型

整型是表示整数的类型。在 Python 中,整型的定义非常简单,直接赋值即可。
例如:

a=10

<叫做a赋值为10>整型可以进行加、减、乘、除等运算,

例如:

print(a+5)

输出结果为 15。

tip:长整数用下划线可以隔开如:

1_000_000
(二)浮点型

浮点型用于表示小数。
例如:

b=3.14

浮点型运算与整型类似,也可以进行各种数学运算,但需要注意浮点数运算可能存在精度问题。
tip:大的浮点数可以用科学技术法表示,如:1e4等价于10000,1.1e-4等价于0.00011
可以运行看一下

1e4
1.1e-4
(三)布尔型

布尔型只有两个值:True 和 False。
有三种运算:”与“ ”或“ ”非“对应and or not
它常用于条件判断。例如:

c=Trued=Falseprint(candd)

输出结果为 False。<与的时候全true才true>

trueorfalse

输出结果为 true。<或的时候全false才false>

a=truenota

则输出false<相反>

(四)运算符

常见的运算符包括算术运算符(+、-、*、/、% 等)、比较运算符(==、!=、>、<、>=、<= 等)<返回布尔>
比较特殊的几个给大家写一下哈
例如:

print2/23/2

输出:1.0,1.5<python里面返回浮点数>

print3//2#整除print5%2#取余print2**3#幂2的3次方

输出:1 ,1, 8

(五)字符串

字符串用于表示文本信息,可以用单引号或双引号括起来。
字符串可以进行拼接、索引、切片等操作。
例如:

str1='Hello',str2="World"print(str1+' '+str2)print(str1[0])print(str1[1:3])type(str1)#打印类型

输出结果为
Hello World
H
el
str
tip:\n为换行;\t为Tab<大空格>,\表示\,r表示原始字符串如下

printr(’hello\tworld\\‘)

有r输出:hello\tworld\
无r输出:hello world\

字符运算:

# 使用[]索引字符串s='abcdefg'print(s[0])# 索引第0个字符print(s[2])# 索引第2个字符print(s[-1])# 索引倒数第1个字符#使用[], 声明start, end. 切片字符串print(s[0:3])# 切片第0到第3个字符(不包括第3)print(s[:3])# 切片从头到第3个字符(start为0时,可以省略)print(s[3:])# 切片从第3个字符到结束(end为结束时,可以省略)

输出:a c g ab ab defg
一些常用操作:

a='hello laowang's.capitalize()#首字母大写转换print(s.endswith('laowang'))# 判断是否以 laowang 结尾print(s.endswith('lao'))# 判断是否以 lao 结尾s.startswith('hel')#检查开头print(s.isdigit())print('123'.isdigit())#检查是否为数字'HELLO'.lower()# 将字符串转换为小写'HELLO'.upper()# 将字符串转换为大写'\nhello\t '.strip()# 去掉字符串两端的空白字符(包括换行符、制表符和空格)' '.join(['1','2','3'])# 使用空格连接列表中的元素len(s)# 返回字符串 s 的长度
(六)类型转换

Python 提供了内置函数来进行类型转换
int() 将其他类型转换为整型,float() 转换为浮点型,str() 转换为字符串,bool() 转换为布尔型。

二、集合类型

(一)列表(list)

列表是一种有序的集合,可以随时添加和删除其中的元素。列表可以进行索引、切片、追加、删除等操作。

创建一个包含不同类型元素的列表:

my_list=[1,"apple",3.14,True]print(my_list)

访问列表中的元素:

fruits=["apple","banana","cherry","orange"]print(fruits[1])# 输出: bananaprint(fruits[-1])# 输出: orangeprint(fruits[1:3])# 输出: ['banana', 'cherry']

修改列表中的元素:

numbers=[1,2,3,4]numbers[0]=10print(numbers)# 输出: [10, 2, 3, 4]

使用append()添加元素:

colors=["red","green"]colors.append("blue")print(colors)# 输出: ['red', 'green', 'blue']

使用insert()插入元素:

letters=["a","c"]letters.insert(1,"b")print(letters)# 输出: ['a', 'b', 'c']

使用remove()删除元素:

animals=["cat","dog","bird"]animals.remove("dog")print(animals)# 输出: ['cat', 'bird']

使用sort()排序:

nums=[3,1,4,2]nums.sort()print(nums)# 输出: [1, 2, 3, 4]

列表推导式

创建新列表的简洁方式:

squares=[x**2forxinrange(5)]print(squares)# 输出: [0, 1, 4, 9, 16]

列表合并

合并两个列表:

list1=[1,2]list2=[3,4]combined=list1+list2print(combined)# 输出: [1, 2, 3, 4]
(二)元组(tuple)

元组和列表类似,但元组一旦定义就不能修改,是不可变序列类型
元组可以进行索引和切片操作,但不能追加或删除元素。

# 元组定义与操作t=(1,2,3)print(t[0])# 输出: 1# t[0] = 10 # 报错,不可修改# 列表定义与操作l=[1,2,3]l[0]=10# 修改元素l.append(4)# 添加元素print(l)# 输出: [10, 2, 3, 4]

列表提供更多内置方法(如 sort()、reverse())。
元组仅支持基础序列操作(如 count()、index())。

(三)集合(set)

集合是一个无序的不重复元素序列
例如:set1 = {1, 2, 3, 3},实际上存储为 {1, 2, 3}。集合支持数学中的集合运算,如交集、并集、差集等。

  • 创建集合:使用花括号{}set()构造函数。

    s={1,2,3}# 直接创建s=set([1,2,3])# 从列表转换
  • 添加元素add()方法添加单个元素,update()添加多个元素。

    s.add(4)# 添加4s.update([5,6])# 添加5和6
  • 删除元素remove()删除指定元素(不存在时报错),discard()删除元素(不报错),pop()随机删除并返回一个元素。

    s.remove(1)# 删除1s.discard(10)# 尝试删除10(无则忽略)s.pop()# 随机删除一个元素
  • 清空集合clear()方法清空所有元素。

    s.clear()
  • 并集union()|运算符。

    a={1,2}b={2,3}a.union(b)# {1, 2, 3}a|b# 同上
  • 交集intersection()&运算符。

    a.intersection(b)# {2}a&b# 同上
  • 差集difference()-运算符。

    a.difference(b)# {1}a-b# 同上
  • 对称差集symmetric_difference()^运算符(仅保留非共同元素)。

    a.symmetric_difference(b)# {1, 3}a^b# 同上
  • 子集/超集issubset()<=判断子集,issuperset()>=判断超集。

    a={1,2}b={1,2,3}a.issubset(b)# Truea<=b# 同上b.issuperset(a)# True
  • 真子集/真超集<>运算符(排除相等情况)。

    a<b# True(a是b的真子集)
  • 长度与成员检查len()获取元素数量,in检查元素是否存在。

    len(s)# 集合大小1ins# 检查1是否在集合中
  • 不可变集合frozenset类型创建不可修改的集合。

    fs=frozenset([1,2,3])
  • 遍历元素:直接迭代或转换为列表。

    forxins:print(x)
  • 集合生成式:类似列表生成式。

    s={xforxinrange(5)ifx%2==0}# {0, 2, 4}
(四)字典(dict)

字典是一个无序的键值对集合
例如:dict1 = {‘name’: ‘Alice’, ‘age’: 25}。
通过键可以快速获取对应的值,
例如:print(dict1[‘name’]) 输出结3果为 Alice。
字典可以添加、删除键值对。

三、三种决策结构

(一)顺序结构

顺序结构是最简单的结构,程序按照代码的书写顺序依次执行。例如:

print("Hello, World!") a = 10 b = 20 print(a + b) 这段代码会依次执行输出、赋值和加法运算。 ##### (二)条件结构 条件结构根据条件是否满足来决定执行哪一段代码。例如: ```Python age = 18 if age >= 18: print("成年人") else: print("未成年人")

这段代码会根据 age 的值判断输出成年人还是未成年人。

(三)循环结构

循环结构用于重复执行某段代码。常见的循环有 for 循环和 while 循环。
for 循环 :用于遍历序列中的每个元素。例如:

for i in [1, 2, 3, 4]: print(i)

输出结果依次为 1、2、3、4。
while 循环 :只要条件为真,就一直执行循环体。例如:

count = 0 while count < 5: print(count) count += 1

输出结果依次为 0、1、2、3、4。

四、小考核

定义一个整型变量 num,并赋值为 100,再输出它的值。
定义一个浮点型变量 pi,并赋值为 3.14159,然后输出它的值。
定义一个布尔型变量 is_valid,并赋值为 True,然后输出它的值。
定义一个字符串变量 greeting,并赋值为 “Hello, Python!”,然后输出它的值。
将 num 转换为浮点型,将 pi 转换为整型,将 greeting 转换为布尔型,然后分别输出转换后的结果。
创建一个列表 numbers,包含元素 1、2、3、4、5,然后输出列表的第二个元素,追加元素 6,删除第一个元素,最后输出整个列表。
创建一个元组 fruits,包含元素 “apple”、“banana”、“orange”,然后输出元组的第一个元素。
创建一个集合 colors,包含元素 “red”、“green”、“blue”、“blue”,然后输出集合的长度。
创建一个字典 person,包含键值对 “name”: “Alice” 和 “age”: 25,然后输出 person 的 “name” 值,添加键值对 “city”: “New York”,最后输出整个字典。
编写一个条件结构,判断一个数是否为正数、负数或零。
使用 for 循环遍历一个列表 [10, 20, 30, 40],并输出每个元素。
使用 while 循环计算 1 到 10 的累加和,并输出结果。
(答案在第二期最后)