计算机组成
CPU:处理指令和运算数据 内存:临时存储CPU要处理的数据 硬盘:永久存储数据 常识:网卡之后常常重启。因为网卡是因为CPU不断的从硬盘调用数据,导致内存变满。重启会清空内存。
Python基础
Python作用
Google开源机器学习框架:TensorFlow 开源社区主推学习框架:Scikit-learn 百度开源深度学习框架:Paddle
解释器和Pycharm
Python解释器作用:运行文件
(1)种类: CPython:C语言开发的解释器(官方),应用广泛的解释器。 IPython:基于CPython的一种交互式解释器。 PyPy:基于Python语?开发的解释器。 Jython:运?在Java平台的解释器,直接把Python代码编译成Java字节码执?。 IronPython:运?在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。
(2)Python环境下载 (3)Pycharm相关知识 PyCharm是?种Python IDE(集成开发环境),带有?整套可以帮助?户在使?Python语?开发时提?其效率的?具,内部集成的功能如下:Project管理+智能提示+语法?亮+代码跳转+调试代码+解释代码+框架和库
(4)Pycharm的基本使用 项?根?录或根?录内部任意位置—右键-- [New] – [Python File]–输??件名-- [OK]。如果是将来要上传到服务器的?件,那么?件名切记不能?中?。
修改解释器:
注释
注释分为两类:单?注释和多?注释。(ctrl+/) 单?注释:只能注释??内容,
print("hello Python")
多?注释:可以注释多?内容,?般?在注释?段代码的情况。
"""
第??注释
第??注释
第三?注释
"""
'''
注释1
注释2
注释3
'''
变量
程序中,数据都是临时存储在内存中,为了更快速的查找或使?这个数据,通常我们把这个数据在内存中存储之后定义?个名称,这个名称就是变量。 定义变量:变量名=值
标识符
由数字、字?、下划线组成 不能数字开头 不能使?内置关键字 严格区分??写
Debug
bug是指程序中的错误。我们可以通过打断点和Debug尝试来查bug. Debugger:显示变量和变量的细节 Console:输出内容
数据类型
检测数据类型的方法:type()
a = 1
print(type(a))
b = 1.1
print(type(b))
c = True
print(type(c))
d = '12345'
print(type(d))
e = [10, 20, 30]
print(type(e))
f = (10, 20, 30)
print(type(f))
h = {10, 20, 30}
print(type(h))
g = {'name':'TOM', 'age':20}
print(type(g))
转换数据类型的函数:
num1 = 1
print(float(num1))
print(type(float(num1)))
num2 = 10
print(type(str(num2)))
list1 = [10, 20, 30]
print(tuple(list1))
print(type(tuple(list1)))
t1 = (100, 200, 300)
print(list(t1))
print(type(list(t1)))
str1 = '10'
str2 = '[1, 2, 3]'
str3 = '(1000, 2000, 3000)'
print(type(eval(str1)))
print(type(eval(str2)))
print(type(eval(str3)))
运算符
算术运算符: 赋值运算符
比较运算符 比较运算符 数字之间的逻辑运算
a = 0
b = 1
c = 2
print(a and b)
print(b and a)
print(a and c)
print(c and a)
print(b and c)
print(c and b)
print(a or b)
print(a or c)
print(b or c)
程序控制语句
输出
格式化输出:
print('我的名字是%s'%name)
print('我的学号是%4d'%student_id)
print('我的体重是%.2f公?'%weight)
print('我的名字是%s,今年%d岁了'% (name, age))
print('我的名字是%s,今年%s岁了'% (name, age))
print('我的名字是%s,明年%d岁了'% (name, age+1))
print(f'我的名字是{name},明年{age + 1}岁了')
转义字符 \n:换?。 \t:制表符,?个tab键(4个空格)的距离。
print('输出的内容',end="\n")
在Python中,print(),默认?带end="\n”这个换?结束符,所以导致每两个print直接会换?展示,?户可以按需求更改结束符。
输入
程序接收?户输?的数据的功能即是输?。
input("提示信息")
当程序执?到input时,等待?户输?,输?完成之后才继续向下执?。 在Python中,input接收?户输?后,?般存储到变量,?便使?。 在Python中,input会把接收到的任意?户输?的数据都当做字符串处理。
password=input('请输入密码:')
print(f'您输入的密码是{password}');
if语句
if true:
print("执行语句1");
print("执行语句2");
print('我是?论条件是否成?都要执?的代码')
需求:?户可以输出??的年龄,然后系统进?判断是否成年,成年则输出"您的年龄是’?户输?的年龄’,已经成年,可以上?"。
age = int(input('请输?您的年龄:'))
if age>= 18:
print(f'您的年龄是{age},已经成年,可以上?')
print('系统关闭')
if 条件:
条件成?执?的代码1
条件成?执?的代码2
else:
条件不成?执?的代码1
条件不成?执?的代码2
多重判断
if 条件1:
条件1成?执?的代码1
条件1成?执?的代码2
elif条件2:
条件2成?执?的代码1
条件2成?执?的代码2
else:
以上条件都不成?执?执?的代码
需求: 1.如果有钱,则可以上? 2.上?后,如果有空座,可以坐下上?后,如果没有空座,则站着等空座位如果没钱,不能上?
money = 1
seat = 0
if money == 1:
print('?豪,不差钱,顺利上?')
if seat == 1:
print('有空座,可以坐下')
else:
print('没有空座,站等')
else:
print('没钱,不能上?,追着公交?跑')
三目运算符: 条件成?执?的表达式 if 条件 else 条件不成?执?的表达式 需求:石头剪刀布游戏
import random
computer=random.randint(0,2)
print(computer)
player=int(input('您输入的是0石头1剪刀2布'))
if ((player == 0) and (computer == 1)) or ((player == 1) and (computer == 2) )or((player == 2) and (computer == 0)):
print('玩家获胜')
elif player == computer:
print('平局')
else:
print('电脑获胜')
循环
while 条件:
条件成?重复执?的代码1
条件成?重复执?的代码2
需求1:计算1-100的累加和
i=1
result=0
while i<=100:
result+=i
i+=1
print(result)
需求2:计算1-100的偶数之和
i=0
result=0
while i<100:
i+=2
result+=i
print(result)
需求3:打印星号(上三角)
j=0
while j<=4:
i=0
while i<=j
print('*')
i+=1
print()
j+=1
需求4:九九乘法表
i=1
while i<=9:
j=1
while j<=i:
print(f'{i}*{j}={i*j}',end='\t')
j+=1
print()
i+=1
while 条件:
条件成?重复执?的代码
else:
循环正常结束之后要执?的代码
i = 1
while i<= 5:
if i == 3:
print('这遍说的不真诚')
break
print('媳妇?,我错了')
i += 1
else:
print('媳妇原谅我了,真开?,哈哈哈哈')
所谓else指的是循环正常结束之后要执?的代码,即如果是break终?循环的情况,else下?缩进的代码将不执?。
i = 1
while i<= 5:
if i == 3:
print('这遍说的不真诚')
continue
print('媳妇?,我错了')
i += 1
else:
print('媳妇原谅我了,真开?,哈哈哈哈')
因为continu是退出当前?次循环,继续下?次循环,所以该循环在continue控制下是可以正常结束的,当循环结束后,则执?else 缩进的代码。
for 临时变量 in 序列:
重复执?的代码1
重复执?的代码2
for 临时变量 in 序列:
重复执?的代码
else:
循环正常结束之后要执?的代码
字符串
- 特征:
name1 = 'Tom'
name2 = "Rose"
name3='''i am 1'''
c = "I'm Tom"
d = 'I\'m Tom'
- 输入和输出
name = 'Tom'
print('我的名字是%s'%name)
print(f'我的名字是{name}')
password = input('请输?您的密码:')
print(f'您输?的密码是{password}')
- 切片
切?是指对操作的对象截取其中?部分的操作。
序列[开始位置下标:结束位置下标:步?]
1.不包含结束位置下标对应的数据,
正负整数均可;(左闭右开)
2.步?是选取间隔,
正负整数均可,默认步?为1
name = "abcdefg"
print(name[2:5:1])
print(name[2:5])
print(name[:5])
print(name[1:])
print(name[:])
print(name[::2])
print(name[:-1])
print(name[-4:-1])
print(name[::-1])
print(name[-4:-1:-1])
- 查找
字符串查找?法即是查找?串在字符串中的位置或出现的次数。 (1)find():检测某个?串是否包含在这个字符串中,如果在返回这个?串开始的位置下标,否则则返回-1。
字符串序列.find(?串,开始位置下标,结束位置下标)
mystr = "hello world and itcast and itheima and Python"
print(mystr.find('and'))
print(mystr.find('and', 15, 30))
print(mystr.find('ands'))
(2)index():检测某个?串是否包含在这个字符串中,如果在返回这个?串开始的位置下标,否则报异常 (3)rfind():和find()功能相同,但查找?向为右侧开始。 rindex():和index()功能相同,但查找?向为右侧开始。 count():返回某个?串在字符串中出现的次数
- 修改
所谓修改字符串,指的就是通过函数的形式修改字符串中的数据。replace()有返回值,是修改后的字符串,但是不会修改原有的字符串。原有的字符串并未进行修改,修改的是返回值。说明字符串是不可变的数据类型。 如果分割字符是原有字符串的子串,分割后会丢失该子串。 - 判断
所谓判断即是判断真假,返回的结果是布尔型数据类型:True或False。
|