age=20
print("我的名字是%s,我的性别是%s"%("张三","男"))# %s为字符占位
print("我的年纪是%d岁"%age)# %d为数字占位
print("www","baidu","com",sep=".")# sep表示分割
print("hello",end="")# end=""表示不间隔,不换行
print("hello",end="\n")# end="\n"表示换行
print("hello",end="\t")# end="\t"表示间隔,相当于tab键
print("12345")#会在一行显示
print("12345\n67890")#会分两行显示
password = input("请输入密码:")#输入操作
print("你刚刚输入的密码是:",password)
print("请输出password的类型:",type(password))#测试什么类型
print("请输出age的类型:",type(age))
a=int("23456")#强制类型转换
print("请输出a的类型:",type(a))
c=int(input("请输入:"))#强制类型转换
条件判断指定非零或非空值为True,零或None为Talse
if None:
print("true")
else:
print("false")
if 0:
print("true")
else:
print("false")
if 7:
print("true")
else:
print("false")
score=int(input("请输入分数"))
if score>=90 and score<=100:
print("A")
elif score>=80 and score<=90:
print("C")
elif score >= 70 and score <= 80:
print("D")
elif score >= 60 and score <= 70:
print("E")
else:
print("及格")
补充:
import random #引入随机库
x=random.randint(0,10)# 0——10的随机数
print(x)
猜拳游戏:
a = int(input("请输入:剪刀(0)、石头(1)、布(2):"))
import random # 引入随机库
x = random.randint(0, 2) # 0——2的随机数
print(x)
if a < 0 or a > 2:
print("输入错误,请重新输入")
else:
if x == a:
print("平局")
elif a > x and x != 0:
print("你赢了")
else:
print("你输了")
for....in
for i in range(5): # 从0开始,到4结束,一共5个数
print(i, end="\t")
print(end="\n")
for j in range(0, 10, 3): # 从0开始,到10结束,每次都+3
print(j, end="\t")
print(end="\n")
name = "shandong"
for x in name: # 提取字符串的每个字符
print(x, end="\t")
print(end="\n")
a = ["aa", "bb", "cc"] # 相当于数组
for i in range(len(a)): # len表示a的长度
print(i, a[i])
while 循环
# while
i = 0
while i < 5:
print("这是第%d次循环" % (i + 1))
print("i=%d" % i)
i += 1
# 1-100求和
i = 1
sum = 0
while i <= 100:
sum += i
i += 1
print("和为%d" % sum)
# while else
count = 10
while count < 5:
print(count, "小于5")
else:
print(count, "大于或等于5")
break语句:可以跳出for和while循环
continue语句:跳过当前循环,直接进行下一轮循环
pass语句:是空语句,一般用作占位语句,不做任何事情
九九乘法表
i = 1
j = 1
sum = 1
while i <= 9:
for j in range(1, 10):
if j <= i:
sum = j * i
print(j, "*", i, "=", sum, end="\t")
j += 1
print(end="\n")
i += 1
字符串
word = '字符串'
sentence = "这是一个句子"
paragraph = """
这是一个段落
可以有多行组成
"""
print(word)
print(sentence)
print(paragraph)
a = "张三说:\"你好啊!\"" # 转义字符将双引号内的话以及双引号输出
print(a)
\'是单引号
\"是双引号
str = "shandong"
print(str)
print(str[3]) # 输出n
print(str[0:5]) # 输出shand
print(str[0:8:2]) # 输出sadn
print(str[:6]) # 输出shando
print(str[3:]) # 输出ndong
print(str + "欢迎你") # 字符串连接用+号
print((str + "\t") * 3) # 字符串连输出三遍
print("hello\nworld") # 使用转义字符换行输出
print(r"hello\nworld") # r使得转义字符失效
列表
1.列表元素类型可以不同
2.列表是写在[]之间,用,分隔
3.列表索引值从0开始,-1为从末尾开始
4.列表可以用+进行连接,使用*表示重复
namelist = ["张三", "李四", "王五", "赵六"]
for name in namelist: # 输出列表中的每个元素
print(name)
i = 0
while i < len(namelist):
print(namelist[i]) # 可用下标输出元素
i += 1
print("-----增加前列表的数据------")
for name in namelist:
print(name)
nametemp = input("请输入增加的姓名:")
namelist.append(nametemp) # 增加
print("-----增加后列表的数据------")
for name in namelist:
print(name)
列表的 增 删 改 查
# 增
a = [0, 1, 2, 3, 4, 5]
b = [6, 7]
a.extend(b) # 将b扩展后加入a中
a.append(b) # 直接将b嵌套在a中
print(a) # [0, 1, 2, 3, 4, 5, 6, 7, [6, 7]]
a.insert(2, 9) # 在下标为2的元素位置插入数值9
print(a) # [0, 1, 9, 2, 3, 4, 5, 6, 7, [6, 7]]
# 删
del a[4] # 删除下标为4的元素
print(a) # [0, 1, 9, 2, 4, 5, 6, 7, [6, 7]]
a.pop() # 弹出末尾最后一个元素
print(a) # [0, 1, 9, 2, 4, 5, 6, 7]
a.remove(4) # 删除4这个数
print(a) # [0, 1, 9, 2, 5, 6, 7]
# 改
a[3] = 2022 # 直接将下标为3的元素修改
print(a) # [0, 1, 9, '你好', 5, 6, 7]
# 查
finda = int(input("请输入你要查找的数值:")) # 类型转换
if finda in a:
print("找到了!")
else:
print("没找到!")
print(a.index(2022, 1, 4)) # 输出3,表示2022的下标为3,区间左闭右开
print(a.count(1)) # 统计数值1有几个
a.reverse() # 将列表a中的元素反转
print(a) # [7, 6, 5, 2022, 9, 1, 0]
a.sort() # 升序排序
print(a) # [0, 1, 5, 6, 7, 9, 2022]
a.sort(reverse=True) # 降序排序
print(a) # [2022, 9, 7, 6, 5, 1, 0]
购物车
products = [["iphone", 6888], ["MacPro", 14800], ["小米6", 2499], ["Coffee", 31], ["Book", 60], ["Nike", 699]]
print("------商品列表------")
for i in range(len(products)):
print(i, end="\t")
for j in range(len(products[i])):
print(products[i][j], end="\t")
print(end="\n")
c = 0
store = []
x = input("请输入你想买的商品的编号:")
while x != 'q':
for i in range(len(products)):
if x == str(i):
store.append(products[i])
x = input("请输入你想买的商品的编号:")
for b in range(len(store)):
print(b, end="\t")
for a in range(len(store[b])):
print(store[b][a], end="\t")
print(end="\n")
元组----tuple
不能修改
增加可通过两个元组相连接,即相加
可以用下标表示,可遍历
tup1 = () # 创建空的元组
tup2 = (50) # 是一个int类型的
tup3 = (50,) # 是一个元组,用逗号来区别
字典
info = {"name": "张三", "age": 20, "school": "大学"}
print(info["name"])
print(info["school"]) # 直接访问
print(info.get("age")) # 如果没有,则返回默认None
print(info.get("gender")) # 如果直接访问,会报错,因为不存在,所以只能这样访问,返回None
print(info.get("gender", "男")) # 可以给定默认值
print(info.get("age", "18")) # 对于已有的数据,默认值不起作用
print(info.keys()) # 输出dict_keys(['name', 'age', 'school']),将所有的键输出
print(info.values()) # 输出dict_values(['张三', 20, '大学']),将所有的值输出
print(info.items()) # 输出dict_items([('name', '张三'), ('age', 20), ('school', '大学')]),将所有的项输出
# 遍历
for key in info.keys():
print(key, end=" ") # 输出name age school
for value in info.values():
print(value, end=" ") # 输出张三 20 大学
for key, value in info.items():
print(key, value, end=" ") # 输出name 张三 age 20 school 大学
print("\n")
for x in info:
print(x)
print("\n")
del info["name"]
print(info) # 输出{'age': 20, 'school': '大学'},即del删除了整个键
info.clear()
print(info) # 输出{},即清空键
使用枚举函数,同时拿到列表中的下标和元素内容
a = ["a", "b", "c", "d"]
for i, x in enumerate(a):
print(i, x)
函数
# 不带参数的函数
def han():
print("学习使我快乐")
han() # 调用函数,输出学习使我快乐
# 带参数的函数
def add(a, b):
c = a + b
print(c)
add(33, 45) # 输出78
# 带返回值的函数
def add1(a, b):
return a + b
print(add1(55, 56)) # 输出111
# 返回多个值的函数
def divid(a, b):
shang = a / b # 除尽
shang1 = a // b # 取整数部分
yushu = a % b
return shang, shang1, yushu
sh, sh1, yu = divid(5, 2)
print(sh, sh1, yu) # 输出2.5 2 1
全局函数
a = 100
def shu():
global a # 声明全局函数
a = 300
print(a)
def shu1():
print(a)
shu()
shu1()
异常处理
# 捕获异常
try:
print(num)
f = open("123.text", "r")
except (IOError, NameError) as result:
print(result)
print("有错误!")
except Exception as result: # Exception可以承接任何异常
print(result)
print("有错误!")