print()
函数:用于输出内容到屏幕input()
函数:用于从用户获取输入+
, -
, *
, /
, //
(整除), %
(取模), **
(幂运算)# 计算两个数的和
a = int(input("请输入第一个数字:"))
b = int(input("请输入第二个数字:"))
print("两数之和为:", a + b)
input()
获取的是字符串类型,需要转换为数值类型才能进行数学运算/
总是返回浮点数,整除//
返回整数部分#
开头'''
或"""
包围'''
这是一个计算圆的面积的程序
作者:小明
日期:2023-05-20
'''
radius = float(input("请输入圆的半径:")) # 获取半径输入
area = 3.14 * radius ** 2 # 计算面积
print("圆的面积为:", area) # 输出结果
#
而非英文的#
)10
, -5
3.14
, -0.5
True
或False
int()
, float()
, str()
, bool()
age = input("请输入你的年龄:") # 获取的是字符串
age_num = int(age) # 转换为整数
if age_num >= 18:
print("你已成年")
else:
print("你未成年")
# 混合类型转换
score = 95
print("你的分数是:" + str(score)) # 需要将数字转换为字符串才能拼接
int("abc")
)True
和False
首字母必须大写=
运算符# 变量交换
a = 5
b = 10
print("交换前:a =", a, "b =", b)
# 方法1:使用临时变量
temp = a
a = b
b = temp
# 方法2:Python特有方式
a, b = b, a
print("交换后:a =", a, "b =", b)
print = 5
)Age
和age
是不同的变量)if
语句基本结构elif
用于多个条件判断else
用于所有其他情况# 成绩评级
score = int(input("请输入你的成绩:"))
if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")
:
结尾==
, !=
, >
, <
, >=
, <=
and
, or
, not
# 判断闰年
year = int(input("请输入年份:"))
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
print(year, "年是闰年")
else:
print(year, "年不是闰年")
=
(赋值)和==
(相等比较)10 < age < 20
是正确的,但age > 10 and < 20
是错误的)while
循环:条件为真时重复执行for
循环:遍历序列或指定次数break
:立即退出循环continue
:跳过当前迭代else
子句:循环正常结束时执行# 猜数字游戏
import random
target = random.randint(1, 100)
count = 0
while True:
guess = int(input("猜一个1-100的数字:"))
count += 1
if guess < target:
print("猜小了")
elif guess > target:
print("猜大了")
else:
print(f"恭喜你,猜对了!共猜了{count}次")
break
# 遍历列表
fruits = ['苹果', '香蕉', '橙子']
for fruit in fruits:
print("我喜欢吃", fruit)
while
循环缺少退出条件导致无限循环break
和continue
的作用for
循环忘记加冒号# 正确的缩进
x = 10
if x > 5:
print("x大于5") # 缩进4个空格
print("这是if语句块内的代码")
print("这是if语句块外的代码") # 没有缩进
# 错误的缩进会导致IndentationError
if x > 5:
print("这行代码没有缩进,会报错") # 错误示例
import random
导入随机模块random.randint(a, b)
:返回a到b之间的随机整数random.random()
:返回0到1之间的随机浮点数random.choice(seq)
:从序列中随机选择一个元素import random
# 掷骰子
dice = random.randint(1, 6)
print("你掷出了:", dice)
# 随机选择
colors = ['红', '绿', '蓝', '黄']
selected = random.choice(colors)
print("随机选择的颜色是:", selected)
# 生成0-100之间的随机浮点数
num = random.random() * 100
print("随机浮点数:", num)
randint
的范围是闭区间(包含两端点)random()
时忘记乘以范围系数+
, -
, *
, /
//
(整除), %
(取余), **
(幂运算)math
模块进行复杂数学运算# 计算表达式 (5 + 3) × 2 ÷ 4 - 1
result = (5 + 3) * 2 / 4 - 1
print("计算结果为:", result)
# 计算圆的周长和面积
import math
radius = float(input("请输入圆的半径:"))
circumference = 2 * math.pi * radius
area = math.pi * radius ** 2
print(f"周长:{circumference:.2f}, 面积:{area:.2f}")
math
模块前忘记导入list = [1, 2, 3]
list[0]
, list[1:3]
append()
, insert()
, remove()
, pop()
, index()
, sort()
, reverse()
len(list)
for item in list:
# 列表基本操作
numbers = [3, 1, 4, 1, 5, 9, 2, 6]
# 添加元素
numbers.append(5)
numbers.insert(2, 7) # 在索引2处插入7
# 删除元素
numbers.remove(1) # 删除第一个出现的1
popped = numbers.pop() # 删除并返回最后一个元素
# 查找和排序
print("数字5的索引:", numbers.index(5))
numbers.sort()
print("排序后:", numbers)
# 列表切片
print("前三个元素:", numbers[:3])
print("偶数索引元素:", numbers[::2])
list[10]
而列表只有5个元素)remove()
和pop()
的用法dict = {'key1': 'value1', 'key2': 'value2'}
dict['key']
keys()
, values()
, items()
, get()
, update()
, pop()
in
关键字for key, value in dict.items():
# 学生成绩字典
scores = {
'张三': 85,
'李四': 92,
'王五': 78
}
# 添加和修改
scores['赵六'] = 88
scores['张三'] = 90 # 修改
# 访问和检查
print("李四的成绩:", scores.get('李四', '无记录'))
if '王五' in scores:
print("王五在字典中")
# 遍历字典
print("\n所有学生成绩:")
for name, score in scores.items():
print(f"{name}: {score}")
# 删除元素
removed = scores.pop('李四')
print(f"删除了李四,他的成绩是{removed}")
get()
方法)keys()
, values()
和items()
的返回值类型def func_name(parameters):
return
语句# 计算阶乘的函数
def factorial(n):
"""计算n的阶乘"""
if n == 0 or n == 1:
return 1
else:
return n * factorial(n - 1) # 递归调用
# 使用函数
num = int(input("请输入一个正整数:"))
print(f"{num}的阶乘是:{factorial(num)}")
# 带默认参数的函数
def greet(name, greeting="你好"):
"""打招呼的函数"""
print(f"{greeting},{name}!")
greet("小明") # 使用默认问候语
greet("小红", "早上好") # 自定义问候语
return
和print
(return
返回值,print
只是输出)global
关键字# 查找列表中的最大值
def find_max(numbers):
max_num = numbers[0] # 假设第一个元素最大
for num in numbers:
if num > max_num:
max_num = num
return max_num
# 冒泡排序
def bubble_sort(arr):
n = len(arr)
for i in range(n-1):
for j in range(n-i-1):
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr
# 判断质数
def is_prime(num):
if num < 2:
return False
for i in range(2, int(num**0.5)+1):
if num % i == 0:
return False
return True
# 斐波那契数列
def fibonacci(n):
a, b = 0, 1
for _ in range(n):
print(a, end=' ')
a, b = b, a + b
# 测试算法
nums = [5, 2, 8, 1, 9]
print("最大值:", find_max(nums))
print("排序后:", bubble_sort(nums.copy()))
print("7是质数吗?", is_prime(7))
print("斐波那契数列前10项:")
fibonacci(10)
祝你在比赛中取得好成绩!