1.什么是软件
由一系列特定顺序组织起来的计算机数据或者指令
常见的软件:
系统软件:windows系统\linux系统\mac os\Andriod\Ios\华为鸿蒙
应用软件:QQ\音乐播放器\视频播放器
谷歌\火狐\360\欧朋\QQ浏览器
2.什么是开发
开发就是制作软件的过程,软件实现了人与计算机的交互
和软件交互的方式:
图形化界面:通过一些现成的界面完成任务
命令行方式:在控制台中输入一些指令,让计算机帮忙完成一些任务.
3.DOS命令行
cd: 进入指定的目录 change directory
cd .. : 表示进入上一级目录
cd / : 表示进入根目录
d: 表示切换到d盘
dir:列出当前目录下面所有的文件和文件夹.
ping: 检测网路是否通畅
ipconfig:查看自己电脑的ip地址
4.计算机编程语言介绍
人类语言:人与人沟通的语言
计算机语言:人与计算机沟通的语言
C C++ C# java php html css js python R 易语言 Go
C:底层开发 面向过程 速度快
C++:面向对象 嵌入式 Andriod底层 做游戏 平台
JAVA:后端语言 开发企业级系统 开发安卓
C#: 后端语言 用于Unity3D 游戏 比如:王者荣耀
php:后端语言 号称世界上最好的语言
javascript: 前端必备的语言(nodejs vue react)
html+css: 标签+样式
Go: 后端语言 区块链 比特币
Python的概述
1.Python语言
2解释型语言:python javascript php jsp asp
编译型语言: java c c++ c#
python是一种脚本语言,解释型 面向对象 弱类型的高级编程语言.
python 是荷兰的一个科学家发明的,在1989年底发明的,在1991年第一个公开发行版本
python 2.X 和 3.X (不兼容) 建议使用3.7或者3.8
2.为什么学习Python
python语言排行榜 python的薪资 python的岗位需求 python的发展前景
python应用广泛:
python是最接近人工智能的语言: C++ R
python语言支持跨平台的应用 比如[在windows上面写的python程序可以直接在mac 或者 linux上面直接使用]
3.Python发展史
Python的作者,Guido von Rossum,是荷兰人。1982年,Guido从阿姆斯特丹大学(University of Amsterdam)获得了数学和计算机硕士学位。
1989年,为了打发圣诞节假期,Guido开始写Python语言的编译/解释器, Python来自Guido所挚爱的电视剧Monty Python's Flying Circus (BBC1960-1970年代播放的室内情景幽默剧,以当时的英国生活为素材)。他希望这个新的语言叫做Python的语言 (Python翻译:蟒蛇)
1991年,第一个Python编译器(同时也是解释器)诞生。它是用C语言实现的cpython。从一出生,Python已经具有了:类(class),函数(function),异常处理(exception),包括列表(list)和词典(dictionary)在内的核心数据类型,以及模块(module)为基础的拓展系统。
4.Python的优缺点
4.1 优点
简单:代表极简主义的语言
易学:特别容易上手
高层语言:当写python程序的时候,不需要去关心底层的内存控制等细节
面向对象:既支持面向过程也支持面向对象
可嵌入性:可以把Python程序嵌入到c\c++程序中去
丰富的库:
GUI图形化界面
5.2缺点
强制缩进
运行速度相对较慢(可以忽略不计)
代码不能进行解密(源代码)
5.Python的应用
web开发: djago flask
爬虫:python
数据分析:numpy pandas
机器学习:sklearn
人工智能:深度学习
自动化运维:
自动化测试:
少儿编程:
三、数据的存储
1.思考问题(1).为什么要使用计算机?
为了存储数据,为了快速的处理数据
(2).数据存储的位置?
硬盘(永久存储) 内存(临时数据)
(3).计算机如何存储数据?
计算机将所有的数据以二进制的形式进行存储(文字 图片 视频)
2.内存
内存是计算机的组成部分,作用是与cpu进行沟通的桥梁
2.1 抽象理解
二进制: 0 和 1 (逢2进1)
十进制: 0 1 2 3 4 5 6 7 8 9 (逢10进1)
八进制: 0 1 2 3 4 5 6 7 (逢8进1)
十六进制: 0 1 2 3 4 5 6 7 8 9 A B C D E F (逢16进1)
2.2 单位
硬盘:1TB 512GB 256GB 128GB
计算机中表示数据的最小单位:[bit ---- b] 比特 也叫做位 值只有:0和1
计算机中处理数据的最小单位:[byte----B] 字节 1个字节等于8比特
单位换算:
1B = 8b
1KB = 1024B 1024=2^10 (程序员节)
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
3.进制
https://www.cnblogs.com/ysocean/p/7513061.html 进制转换原理
3.1 什么是进制
进制就是进位的制度 一种进位的方式
例如:
二进制:逢2进1
八进制:逢8进1
十进制:逢10进1
十六进制:逢16进1
3.2 进制的特点
每种进制都有确定的符号集
每种进制采用的是位置表示法,位置不同表示的意义不同,值的不同取决于它所在位的权值不同
145 = 1 x 10^2 + 4 x 10^1 + 5 x 10^0
二进制的计算:
0+0=0
1+0=1
0+1=1
1+1=10 [逢2进1] = 1 x 2^1
3.3 进制之间的转换 【难点】
a.二进制 -> 十进制
转换原理:将二进制按照权展开,相加即可得到十进制
2的几次方:
2的0次方 = 1
2的1次方 = 2
2的2次方 = 3
2的3次方 = 8
2的4次方 = 16
2的5次方 = 32
2的6次方 = 64
2的7次方 = 128
2的8次方 = 256
2的9次方 = 512
2的10次方 = 1024
二进制: 十进制
101010====> 1*2^5 + 0*2^4 + 1*2^3 + 0*2^2 + 1*2^1 + 0*2^0 = 32 + 0 + 8 + 0 + 2 + 0 = 42
111010====> 1*2^5 + 1*2^4 + 1*2^3 + 0*2^2 + 1*2^1 + 0*2^0 = 32 + 0 + 8 + 0 + 2 + 0 = 58
b.十进制 -> 二进制
转换原理:对十进制进行除2的运算,直到商为0为止,然后将各个步骤中得到的余数倒着写出来.
第一种:倒除法:
9====>1001(二进制)
13===>1101(二进制)
21===>10101
第二种:
9===>8 + 1 = 1001
41===>32 + 8 + 1 = 101001
c.二进制 -> 八进制
转换原理: 每三位二进制按权展开,相加得到1位八进制,实现思路:从右向左进行分组,每3位为一组,不足是补0,将每一组进行二进制转换八进制的操作,最后将每一组得到的结果连起来
常见的二进制和八进制
000 ==== 0
001 ==== 1
010 ==== 2
011 ==== 3
100 ==== 4
101 ==== 5
110 ==== 6
111 ==== 7
二进制 八进制
101010 ====> 101 010 ==>52(八进制)
11100101 ====> 011 100 101===>345(八进制)
八进制 二进制
520====>101 010 000 ====>101010000(二进制)
1 3 1 4 ====>001 011 001 100 ===>1011001100(二进制)
d.二进制 -> 十六进制
转换原理: 每四位二进制按权展开,相加得到1位十六进制,实现思路:从右向左进行分组,每4位为一组,不足是补0,将每一组进行二进制转换十六进制的操作,最后将每一组得到的结果连起来
常见的16进制和二进制
二进制 十六进制
0000 ====> 0
0001 ====> 1
0010 ====> 2
0011 ====> 3
0100 ====> 4
0101 ====> 5
0110 ====> 6
0111 ====> 7
1000 ====> 8
1001 ====> 9
1010 ====> A (10)
1011 ====> B (11)
1100 ====> C (12)
1101 ====> D (13)
1110 ====> E (14)
1111 ====> F (15)
二进制 十六进制
10010010===> 1001 0010 ===>92
1010010010===> 0010 1001 0010 ==>292
十六进制 二进制
AF01 ======> 1010 1111 0000 0001 ====>1010111100000001
A6F3 ======> 1010 0110 1111 0011 ====>1010011011110011
5.存储数据
计算机存储数据的过程:
需要先在内存中开辟空间,然后将数据转换为二进制,将二进制数据存储到内存中去.计算机开辟内存空间的最小单位是字节.
比如存储数字1: 一般会占4个字节
00000000 00000000 00000000 00000001
四、第一个Python程序
1.打开pycharm,新建项目
2.创建名字为1hello.py的文件 (python的文件后缀为 .py)
3.在1hello.py中输入内容为:
print(123)
4.在代码区域单击鼠标右键,选择运行文件
五、Python的编码规范
1.在每个语句的结束位置不用添加分号,每行最好只写一条语句
2.python中是通过缩进4个空格来区分代码块的
3.尽量避免在文件名中出现中文或者空格
六、注释
注释就是在编写程序的时候,给代码添加的一些解释性的文字.
作用:提高代码的可读性,方便后续的修改
注释是解释性文本,在程序运行的时候,注释的文字会自动跳过,不做处理.
分类:
单行注释:#
多行注释(块注释): ''' 注释的文本 ''' 或者 """ 注释的文本 """
注意:
如果单纯使用双引号,双引号的注释不能嵌套.
七、输入输出【重点】
1.print输出
作用:将特殊的数据输出到屏幕中(调试工具中)
print()输出的内容默认是独成一行
print() 默认输出一个换行
print(123)
print("hello")
若想一次性输出多个数据,使用逗号隔开,最终得到的结果将逗号识别成了空格
print(333,"welcome to qianfeng",999)
2.input输入
作用:将外部的值作为程序中变量的值使用[从控制台获取值]
代码演示:
注意:在使用input的时候,程序会停止在这个地方,等待用户的输入 当输入的内容结束后,按下enter键,此时输入结束 用户输入的值可以通过变量的形式保存起来.
num = input("请输入你的内容:")
print(num)
name = input("请输入你的姓名:")
age = input("请输入你的年龄:")
print(name,age)
注意:通过input接收的数据,数据格式为字符串类型.
#字符串和整型的转换
int() 将字符串转换为整型
str() 将其他类型的数据转换为字符串类型
num = 100
# 通过int()将输入的内容由字符串转换为整型
num1 = int(input("请输入一个数字:"))
print(num - num1)
练习:在控制台输入两个数字,计算两个数字的乘积
a = int(input("输入第一个数字:"))
b = int(input("输入第二个数字:"))
print(a*b)
常用的快捷键:
ctrl + d 快捷键 复制粘贴上一行代码
ctrl + z 快捷键 撤销上次操作
八、变量
1.1 变量
变量是在程序运行过程中,值可以随时发生改变.
作用:存储数据 参与运算
1.2. 定义
格式: 变量名 = 值 表示把等号右边的值赋给等号左边的变量名
"=" 表示赋值运算符 和数学中的等于不是一回事.
age = 10
age = "hello"
print(age)
注意:在同一个文件中,出现了相同的变量名,后面的变量的值会把前面的变量的值进行替换.
[扩展]:python是弱类型的语言,可以动态改变变量的数据类型.容错性比较高;
1.3.删除变量
通过del 删除变量
sex = "男"
del sex
print(sex) # NameError: name 'sex' is not defined 表示 sex变量未定义
注意:当通过del删除变量以后,相当于该变量未定义.
1.4.关键字
关键字:在python中被赋予了某些特殊含义的单词.
import keyword (import 表示引入某个扩展包)
print(keyword.kwlist) kwlist是显示所有的关键字
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal','not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
1.5.标识符
python中的标识符的作用:主要是作为:变量 函数 类 模块以及其他对象的名称.
定义合法标识符的规则:
1.只能由数字 字母 下划线组成不可以是其他的字符[$ % # *]等.
2.标识符的开头不能是数字
3.标识符不能使关键字
4.严格区分大小写 age 和 Age 是两个不同的标识符
注意:
1.python中的官方要求:不同的单词在拼接的时候使用下划线连接 age_num 单词全部是小写
遵循驼峰命名法 ageNum(小驼峰) AgeNum(大驼峰)
2.标识符的定义要做到见名知意.
练习:
xiaoming 合法
12hello 不合法
abc_world 合法
score345 合法
扩展:
常量:常量名所有的字母大写 由下划线连接各个单词 如:TOTAL PI
函数名&方法:函数名应该为小写 可以使用下划线风格增加可读性: my_function my_example_function
文件名:全部小写,可以使用下划线
包:应该是简短的 小写的名字
模块:与包相同
类:通常情况下是首字母大写的单词. 如 MyClass 内部的类可以使用额外的前导下划线