8.30作业
作者:互联网
计算机基础之编程
什么是编程语言
编程语言是人与计算机交流的介质
什么是编程
通过编程语言写一堆文件
为什么要编程
取代劳动力,帮人类干活
计算机组成
CPU
控制器
控制硬件
运算器
算数运算+逻辑运算
存储器
存储数据
主存
优点:速度快
缺点:容量小,断电即消失
外存
优点:容量大,永久存储
缺点:速度慢
输入设备
输入信息,如键盘/鼠标
输出设备
输出信息,如显示屏/打印机
应用程序的启动
32位和64位
多核CPU
同时刻完成多件事情
机械硬盘工作原理
机械手臂
读取数据
磁道
存储数据
扇区
划分磁道
平均寻道时间
5ms
平均延迟时间
4.15ms
平均寻找数据时间
9.15ms
计算机操作系统
什么是文件
操作系统提供的虚拟单位,虚拟单位用来存储数据
操作系统有什么用
把对硬件的复杂操作简单化
操作系统的启动
- 启动临时操作系统
- 临时操作系统启动真正的操作系统
- 启动操作性系统,关闭临时操作系统
编程语言的分类
机器语言
优点:执行速度快
缺点:开发效率慢
汇编语言
优点:开发效率高
缺点:执行效率低
高级语言
编译型语言
优点;执行效率高
缺点:开发效率低
解释型语言
优点:开发效率高
缺点:执行效率低
网络的瓶颈效应
变量
什么是变量
描述世间万物的状态(属性)
变量的三大组成
变量名(描述/接收变量值)赋值符号(=)变量值(具体的值)
变量名的命名规范
- 变量名有意义
- 数字/字母/下划线组成,不能以数字开头
- 不能以关键字命名(lis)
两种变量名的方式
- 驼峰提
- 下划线(推荐)
数据类型
数字类型
整型
- 作用:年龄
- 定义方式:int
- 使用方法:
+-*/ // % **
浮点型
- 作用:身高
- 定义方式:float
- 使用方法:
+-*/ // % **
字符串
- 作用:姓名
- 定义方式:str
- 使用方法:
- 索引取值
- 索引切片
- 成员运算
- for循环
- len长度
- strip去两端字符/lstrip/rstip
- startswith/endswith
- split
- count
- find/index
- join
- center/ljust/rjust
列表
- 作用:存储多个元素
- 定义方式:list --》 []存放多个元素(任意数据类型)
- 使用方法
- 索引取值/索引修改值
- 索引切片
- 成员运算
- for循环
- len长度
- append
- sort
- reverse
- extend
- copy
- clear
- remove
- insert
字典
- 作用:键值对存储多个值
- 定义方式:{}内有多个键(字符串)值(任意数据类型)对
- 使用方法
- 按key取值
- 按key修改值
- 按key增加值
- keys
- values
- items
- get
- setdefault
- update
流程控制
流程控制之if判断
- 单分支结构if
- 双分支结构ifelse
- 多分枝结构if elif elif else
流程控制之for循环
for+break
中断本层循环
for i in range(1,1001):
print(i) #打印1-1000的数
if i==5:
break
for+continue
中断本次循环,不执行下面的代码
for i in range(1,11): #range顾头不顾尾
print(i) #打印1-10的数
if i==5:
continue #跳出本次循环,执行下一步的代码
for循环嵌套
for i in range(10):
for j in range(10):
文件处理
基本的文件操作
- 打开文件open
- 修改文件read/write
- 关闭文件close
文件的三种模式和2种方法
- r 只读
- w 只写(清空文件)
a 追加写入
- t 文本模式
b 二进制模式
r+/w+(清空文件)/a+(不推荐使用)
with管理文件上下文
with open() as f:
f.read()
异常处理
try:
pass
except Exception as e:
print(e)
1. 有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中
即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}
dic={'key1':[],'key2':[]}
lis=[11,22,33,44,55,66,77,88,99,90]
for i in lis:
if i<66:
dic['key1'].append(i) #按key取值
else:
dic['key2'].append(i)
print(dic) #{'key1': [11, 22, 33, 44, 55], 'key2': [66, 77, 88, 99, 90]}
2. 统计s='hello alex alex say hello sb sb'中每个单词的个数
结果如:{'hello': 2, 'alex': 2, 'say': 1, 'sb': 2}
dic={}
s='hello alex alex say hello sb sb'
cont_hello=s.count('hello')
# print(cont_hello)
cont_alex=s.count('alex')
cont_say=s.count('say')
cont_sb=s.count('sb')
dic.setdefault('hello',cont_hello)
dic.setdefault('alex',cont_alex)
dic.setdefault('say',cont_say)
dic.setdefault('sb',cont_sb)
print(dic)
3. 写代码,有如下变量,请按照要求实现每个功能
name = " aleX"
# 1) 移除 name 变量对应的值两边的空格,并输出处理结果
print(name.strip())
# 2) 判断 name 变量对应的值是否以 "al" 开头,并输出结果
print(name.startswith('al')) #其实以空格开头 此处打印false
# 3) 判断 name 变量对应的值是否以 "X" 结尾,并输出结果
print(name.endswith('X')) #True
# 4) 将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果
print(name.replace('l','p')) # apeX
# 5) 将 name 变量对应的值根据 “l” 分割,并输出结果。
print(name.split('l')) #[' a', 'eX']
# 6) 请输出 name 变量对应的值的第 2 个字符?
print(name[1]) #a
# 7) 请输出 name 变量对应的值的前 3 个字符?
print(name[0:3]) # al
# 8) 请输出 name 变量对应的值的后 2 个字符?
print(name[-1:-3:-1]) #eX
# 9) 请输出 name 变量对应的值中 “e” 所在索引位置?
print(name[3]) #e
# 10) 获取子序列,去掉最后一个字符。如: oldboy 则获取 oldbo。
print(name.rstrip('X')) # ale
4. 假设有一个文件test.txt,内有如下内容
l=[
{'name':'alex','age':84},
{'name':'oldboy','age':73},
{'name':'egon','age':18},
]
需求:
1. 读取文件内容
2. 计算这三个人的年龄总和
with open(
r'D:\python3\test.txt'
)as f:
data=f.read()
print(data)
l = [{'name': 'alex', 'age': 84}, {'name': 'oldboy', 'age': 73}, {'name': 'egon', 'age': 18} ]
alex_age=l[0]['age']
oldboy_age=l[1]['age']
egon_age=l[2]['age']
sum_age=alex_age+oldboy_age+egon_age
print(sum_age)
标签:alex,name,age,作业,8.30,print,sb,hello 来源: https://www.cnblogs.com/lidandanaa/p/11437327.html