目录
计算机基础结构由五大部分组成
python的数据类型:
变量
链式赋值和多个赋值操作同时进行
input()与print()函数
查看数据类型
字符串类型 -重
算术运算符和表达式
关系运算符和表达式
逻辑运算符和表达式
字符串类型 -重
表达式
短路运算
三目运算符
字符串运算
乘法运算
比较运算符
成员运算
索引(正向索引,反向索引)
切片
定义(创建/声明)列表语法:
解(拆)包
列表运算加法运算(拼接)
修改列表中某个元素
运算器:程序中指令对数据进行加工处理
控制器:根据程序的需求,指挥计算机的各个部件协调工作
存储器:保存各类程序的数据信息
内存(RAM)--容量小、速度快、临时存储数据
硬盘(HDD)--容量大、速度慢、永久存储数据
输入设备:外界向计算机传送信息的装置
键盘、鼠标、扫描仪
输出设备:计算机向外界传送信息的装置
显示器、音响、打印机
注意:注意变量没有类型,关联的对象才有类型
变量名 = 变量值
变量名1 = 变量名2 = 变量值
变量名1,变量名2 = 变量值1,变量值2
#=表示赋值符号,将等于号右侧的赋值给等号左侧变量
age = 20
print("age")
x = 10
y = 20
result = x + y
print(result)
#定义变量 申请内存,为内存空间命名
person_name = '张三'
class_name = 'test_2023'
number01 = number02 = number03 = 100
number01,number = 100,200
#修改变量:python中允许对同一个变量,先后存入不同类型的数据,之前的数据会被覆盖
person_name = '李四'
#引用/使用/调用 变量:可以向申请的内存中存入数据、修改数据、取出数据进行运算、查看数据、收回
print(person_name)
#删除变量: del用于删除变量,同时解除与对象的关联
#del 变量名称1,变量名称2
del person_name,class_name
#链式赋值
n4 = n5 =n6 = 300
多个赋值操作同时进行:
n7,n8,n9 = 10,-9,0
input()函数,主要用于获取键盘输入的数据,返回的值是字符串类型
print()函数,主要用于显示(输出)结果并换行
#变量 = input函数("提示信息")
#在终端中或控制台中获取用户输入的信息,将输入的信息赋值给变量
# = 表示赋值符号,将右边的数据给到左边
#print(数据)
#在终端中显示信息
#使用print()函数在终端中输出个人介绍(姓名、年龄、爱好)
print("lalala") #打印字符串
print(28) #打印整数
print("滑雪") #打印字符串
#在一行上输出个人介绍
print("熊三",20,"跳舞")
#使用input()函数通过键盘输入个人介绍,并通过print()打印个人介绍
#获取姓名
name = input("请输入姓名:")
#获取年龄
age = input("请输入年龄:")
#获取爱好
bobby = input("请输入爱好:")
print(name)
print(age)
print(hobby)
"""
在终端中提示用户输入武器的名称
再提示用户输入武器的超能超能力
最后显示:xx的超能力
"""
weapa = input("请输入武器的名称")
atk = input("请再输入武器的超能力")
print(weapa+"的超能力是"+atk)#加号表示字符串拼接
print(f'{weapa}的超能力是{atk}')#美化格式输出
print(weapon,'的超能力是',atk)#逗号会有空格间隔
"""
请用户通过键盘输入用户的账号和密码
最后输出:
输入的用户名是xxxx
输入的密码是xxxx
"""
id = input("请输入账号")
password = input("请输入密码")
print("输入的用户名是:"+id,"\n"+"输入的密码是:"+password)
print(f"输入的用户名是{id}")
print(f"输入的用户名是{password}")
print("输入的用户名是:"+id)
type()函数
name = 'test'
print(type(name))
age = 18
print(type(int))
sal = 100.15
print(type(sal))
字符串运算
(1)加法运算
说明:字符串加法运算,就是字符串拼接
(2)乘法运算
说明:字符串乘法运算,就是字符串复制。下标从0开始
统计总字数len()
print(len("sean"))
占位None
只希望有一个变量,但指向的对象还不能确定
#占位
skill = None
print(skill)
#绑定数据
skill = '乾坤大挪移'
print(skill)
#解除与对象的绑定关系
name = None
print(name)
(1)算数运算符
+、-、*、/、//(整除)、%(求余)、**(成方)
乘法运算符
案例:计算半径r=10的圆形的周长和面积
r = 10
PI = 3.14
cir = 2* PI*r
area = PI*r*r
print(cir)
print(area)
除法运算符
案例:小花有100元零花钱,如果每天花4元钱,可以花几天?
pin_money = 100
per = 4
day = pin_money / per
print(day)
整除运算符
案例:学校新进了250套新桌椅,一个班级的学生为30人,可以分给几个班级?
x = 250
p = 30
z = 250 // 30
print(z)
求余运算符%
案例:学校新进了250套新桌椅,一个班级的学生为30人,可以分给几个班级?还剩余多少套?
x = 250
p = 30
z = 250 % 30
print(z)
乘方运算符**
案例:计算半径r=25的圆形的面积
r = 25
PI = 3.14
area = PI * r ** 2
print(area)
"""
在终端中录入年份,判断年份是否为闰年
条件1:年份能被4整除,但是不能被100整除
条件2:年份能被400整除
输入:2019
输出:Flase
输入:2000
输出:True
"""
nian = int(input("请输入年份"))
result = nian % 4 == 0 and nian % 100 != 0 or nian % 400 == 0
print(f"判断的年份是:{nian}")
print(f"判断闰年的结果是:{result}")
说明:字符串加法运算,就是字符串拼接
说明:字符串乘法运算,就是字符串复制。下标从0开始
统计总字数len()
str05 = "你好Python,Python你好,世界真小"
str06 = "Python"
x = str05.count(str06)
print(x)
print(len("sean"))
统计一个字符串在另外一个字符串中出现的次数,如果不存在返回0
count(str)
str05 = "你好Python,Python你好,世界真小"
str06 = "Python"
x = str05.count(str06)
print(x)
大小写转换
upper()英文字母全变成大写
lower()英文字母全部变为小写
str09 = "ABCDefgHJK"
s1 = str09.upper()
print(s1)
s2 = str09.lower()
print(s2)
spilt(分隔符,分割数量)
fruit = "西瓜,苹果,香蕉,草莓"
str07 = fruit.split(",")
print(str07)
str08 = fruit.split(",",2)
print(str08)
字符串替换
replace(老字符串,新字符串、个数)
删除字符串两端、右端、左端的空白字符
strip()
rstrip()
lstrip()
str10 = " i love testing, 我爱编程, 向Python走起 "
print(str10)
s3 = str10.split()
print(str3)
判断字符串是否全部为字母、数字、空格
str12 = "123 i love testing 456"
s1 = str12.isalpha()
s2 = str12.isdigit()
s3 = str12.isdigit()
print(s1, s2, s3)
startwith(str, beg , end)
startwith 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True否则返回 False
str16 = 'abcdefghjk'
res1 = str16.startswith('abc')
res2 = str16.startswith('abc', 1, 5)
print(res1, res2)
endwith(str, beg , end)
endwith 方法用于检查字符串是否是以指定子字符串结尾,如果是则返回True否则返回 False
str17 = 'abcdefghjk'
res3 = str17.endswith('jk')
res4 = str17.endswith('jk', 1, 5)
print(res3, res4)
eval(表达式)
eval 用来执行一个字符串表达式,并返回表达式的值,可以应用于类型转换
a = 3
b = 'a*4'
c = eval(b)
print(c)
# 通过input()键盘输入给对方留言,获取留言总字数
txt = input("请给对方留言")
print("你留言的总字数为:"+str(len(txt))+"个字");
-- 方法二
txt = input("请留言")
print(len(txt))
"""
在终端中录入一个半径,输出圆形的面积(3.14 x 半径的平方) round
输出的格式:圆形的面积是:xxx
"""
round = int(input("请输入圆的半径:"))
#area = 3.14 * r **2
area = int(input(3.14**round))
print("圆形的面积是:"+str(area))
"""
准备一个数,判断这个数是否为整数
"""
#获取数据
number = int(input("请输入一个数"))
#数据处理
result = number % 2 == 0
#输出结果
print(f"输入的数是:{number},它是否是偶数:{result}")
一旦结果确定,后面的表达式将不再执行
#Flase and ?
#True or ?
逻辑运算时尽量将复杂的判断放在后面
复制
and:当第一个式子为flase时候,将不会判断第二个式子
or:当地一个操作为true时候,将不会再判断第二个操作数
#如果10大于等于10,则打印1,否则打印-1
print(1) if 10 >= 10 else print(-1)
#如果今天天气好,输出天气真好,否则输出天气真不好
#定义变量获取天气情况,晴朗、阴天、雨天、刮风
weather = input("请输入天气情况")
print("天气真好") if weather == "晴朗" else print("is bad")
加法运算
+:用于字符串拼接两个容器
+=:用于原容器与右侧容器拼接,并重新绑定变量
s1 = '你好'
s2 = 'sxx'
s3 = s1 +s2
print(s3)
print(type(s3))
s3 += 'a' #s3 = s3 +'a'
print(s3)
*:表示重复生成容器元素
*=:用原容器生成重复的元素,并重新绑定变量
s4 = 'python'
s5 = s4*3
print(s5)
print(s4 != s5)
in
not in
print("大神" in "我是大神")
print("大神" not in "我是大神")
正向索引从0开始,第二个索引为1,最后一个为len(容器名称)-1
反向索引从-1开始,-1代表最后一个,-2代表倒数第二个,第一个-len(容器)
s1 = "我是齐天大圣孙悟空"
# 0 1 2 3 4 5 6 7
print(s1[0])#正向索引从0开始
print(s1[3])
print(s1[-1]) #反向索引从右开始
print(s1[len(s1)-3])
s2 = '我是齐天大圣孙悟空'
print(s2[:])
print(s2[:3]) #不包含结束索引所对应的内容
print(s2[3:]) #开始值到默认结尾
print(s2[::-1]) #倒叙打印
print(s2[::2]) #间隔2两个,走两步
#创建字符串:人生苦短,我用python
s2 = "人生苦短,我用python"
#打印第一个字符,最后一个字符
print(s2[0::12])
#打印前两个字符,后6个字符
print(s2[:2],s2[-6:])
#打印中间一个字符
print(s1[len(s1)//2])
#倒叙打印所有字符
print(s2[::-1])
列表名 = [数据1,数据2,数据n.........]
列表名 = list(可迭代对象)
列表名 = [[数据1,数据2,数据n],[数据1,数据2,数据n],......[数据1,数据2,数据n]]
#解包是星星或者变量名
print(*list_stu) #解包
#下面这种方法可以直接根据自己写的拆解开一一对应,随便输入一个就好
也可以两个一起,中间加上逗号就好
list_cases = [['case1', 'root', '12345', True],
['case3', 'root', '12345', True],
['case2', 'root', '12345', False],
['case4', 'root', '12345', True, '密码为空']
]
case01,case02,case03,case04 = list_cases
print(case02)
print(case02[3])
print(case01,case04)
print(*case03)
list_name = ['skd','wde3ws','细节哦']
list_car = ['奔驰','宝马','奥迪']
list_result = list_car + list_name #加法拼接
print('list_result',list_result)
list_name = ['skd','wde3ws','细节哦']
list_car = ['奔驰','宝马','奥迪']
list_result = list_name * 3
print('list_result',list_result)
list01 = [1,2,3,4]
#更新或修改元素
list01[1] = 1
print(list01)
#删除某个元素
del list[1]
print(list01)
#删除列表元素 ---下标
print('删除前信息',list_car)
del list_car[1]
print('删除后信息',list_car)
#删除列表对象 ---列表名
print('删除前信息',list_car)
del list_car
print('删除后信息',list_car)
#函数指定索引号进行删除
list01.pop(2)
print(list01)
extend 表示将另一个列表中的所有元素追加到当前列表的尾部
list1 = ['aaa', 'bbb', 'ccc']
list2 = ['hhh']
list1.extend(list2)
print(list1)
append()向列表尾部追加一个元素
list_num = [100,200,300]
print('追加数据前:',list_num)
list_num.append(230)
print('追加数据后',list_num)
"""
创建列表,存储水星,金星,地球,木星,土星,天王星
向列表中追加海王星
在地球后插入火星
打印距离太阳最远的行星(最后一个行星)
打印地球之前的所有行星(前两个行星)
删除金星
qiu.remove("金星")
删除地球后面的所有行星
倒叙打印所有行星
for i in range(len(qiu)-1,-1,-1):
print(qiu[i])
"""
qiu = ['水星','金星','地球','木星','土星','天王星']
qiu.append('海王星')
print(qiu)
qiu.insert(3,'火星')
print(qiu)
print(qiu[-1])
print(qiu[:2])
qiu.pop(1)
print(qiu)
del qiu[2:]
print(qiu)
print(qiu[::-1])