计算机基础知识
cpu: 人类的大脑 用途: 用于计算和处理
内存: 临时存储数据 用途: 解决硬盘和cpu的速度差
硬盘: 永久存储数据
操作系统: 是一个特殊的软件,调度硬件和软件之间的数据交互
python2和python3区别
- Py2: 源码不统一, 重复代码, 维护成本高
- Py3: 源码统一, 没有重复代码, 维护成本低
- 字符串类型不同 py3: str bytes,py2: unicode str,py2中的unicode对应py3中的str,py2中的str对应py3中的bytes
- 默认解释器编码 py2: 默认使用解释器编码asciipy3 默认使用解释器编码utf-8
- 输入 py2:raw_input("你好") py3:input("你好")
- 输入 py2:print "你好" py3:print("你好")
- int int long除法
- range和xrang py2:range 在内部立即把所有的值创建xrange 不会再内部立即创建,而是循环时,边循环边创建,py3:range 不会再内部立即创建,而是循环时,边循环边创建
- 模块和包 py2:文件中必须有_ init _.py,py3:不需要
- 字典keys py2:列表,py3:迭代器,可以循环但不可以索引valuespy2:列表py3:迭代器,可以循环但不可以索引itemspy2:列表,py3:迭代器,可以循环但不可以索引
- map/filter py2:返回列表,py3:返回迭代器,可以循环但不可以索
python是一个编程语言(重点)
python是强类型定义语言 动态 解释型
编译型、解释型语言的区别和特点
- 编译型
特点: 只编译一次
优点: 运行速度快
缺点: 开发速度慢
代表语言: C、C++
- 解释型
特点:边编译边执行
优点: 开发速度快
缺点: 运行速度慢
代表语言: Python
python的优缺点
优点:
开发效率高, 可跨平台, 可嵌入, 可扩展, 高级语言, 代码简单, 优雅, 明确
缺点:
相对C慢, 代码不能加密, 不能利用多线程
种类:
cpython 官方推荐安装 转成c的字节码
jython 转换成java的字节码
irnopython 转换成C#(.NET)字节码
pypy 转换成动态变异 开发快 运行快
print()
print(),字符串,数字,判断,前期全靠print来排bug
print('hello world!')# 输出结果hello world!
变量
什么是变量?
x = 1+2+3+4+5 # x=15y = x*3/2 # 15*3/2=22.5z = (y+100) / 24 # (22.5+100)/24=5.104166666666667print(x,y,z)# 输出结果1522.55.104166666666667
这里的x,y,z就是变量,代指一些内容,简单的可以理解就是把右边的值给了左边那个字母,左边那个字母这个时候就称之为变量,这里的x、y、z就是变量。(后面还会继续学习)
作用:
- 作为一个临时存储的中间值
- 给一些复杂难记的起一个容易记住的名字
定义变量:
- 变量名
- 赋值操作 =
- 值 = 后面的内容
变量命名规则:
- 变量全部由数字,字母,下划线任意组合
- 不能以数字开头
- 不能是python的关键字以下关键字不能声明为变量['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
- 要具有描述性,要具有意义
- 不能使用中文和拼音
- 要区分大小写
- 推荐写法:驼峰体下划线
变量的练习:
# 题目:看下面的变量设置是否正确?x8 = 100 # Trueb_ = 12 # True4g = 32 # True_ = 11# True*r = 12 # Falser3t4 = 10 # Truet_ = 66 # True
变量的小高级:
# 题目:给出以下的结果?age1 = 18age2 = age1age3 = age2age2 = 12print(age1,age2,age3)# 输出结果181218# 为什么会这样?# 1. 执行顺序,从上到下# 2. 赋值在下面的会将上面的赋值取代,变成下面新的值,指向发生了改变,而不是变量本身。
变量识记:
- 变量只能指向数据,不能指向变量
- 变量在内存中是唯一命名的
- 变量代指一些复杂过长的数据
常量
常量的定义
- 变量名全部大写,放在文件的最上面,如:ALEX_AGE = 50常量不建议修改
- 生活中一直不变的,如π,身份证号码
- 在python中没有真正的常量,为迎合其他语言的口味,全部大写的变量称之为常量
- const int count = 60;一旦定义为常量,更改即会报错
注释
用途:
帮助理解,给一些不太能够理解的的写一个描述,让咱们写的程序好理解
两种表示方法:
- 单行注释: # 只能注释一行,不能换行 注释的代码是不执行的
- 多行注释: ''' ''' 支持换行
格式:
s1 = 'hello world!'单行注释:# s2 = 'ni hao shi jie' # 我就是被#号注释掉的内容多上注释:'''床前明月光地上鞋两双举头望明月其中就有你'''
基础数据类型初识
整型 (int): 数值型
print(23+37)print(25-3)print(2*6)print(6/3)# 输出结果6022122.0
字符串 (str): 汉字、字母
- python中用引号引起来的就是字符串 如:c = """shijie""" # 是字符串
- 字符串拼接只能相乘或相加字符串+: 字符串和数字不能进行相加字符串* : 字符串和数字相乘
布尔值 (bool):
- True 真 1
- False 假 0
还有其他的都是比较重要的:列表(list)如[1,a]、元组(tuple)如:(1,a,)、字典(dict)如:{'a':1,'b':2}、集合(set)如:{'apple', 'orange', 'apple'}
input (用户输入)
用途:
用户输入
识记点:
python3版本中, input获取到的类型全部都是字符串类型(重点)
格式:
示例一improt getpass # 调用python getpass模块username = input('请输入一个内容: ') # 提示语句passwd = getpass.getpass('请输入密码: ')示例二# 输出结果>>> my_input = int(input('请输入一个数字: '))请输入一个数字: 6>>> num = my_input + 4>>> print(num)10>>> print(type(num))# 字符串与数值型无法相加# 通过int将str转换成数值型
if 如果条件判断
if 如果选择的5种条件
- 单独if (单纯选择)
切记:tab和空格不能混着用
格式:
if 条件: # 条件 一般用来做判断 > < ==print(1)
例题:
print(111) if 2 < 1: # 如果该条件成立 print(666) # 就进入到这个里面执行print(666) print(222) # 如果条件不成立就执行print(222) # 输出结果 111 222# 思考以下的结果 if 2 > 1: print(666) print(222)
练习题:
print(123) if 3 > 5: print(4) print(456) if 4 > 3: print(7) print(8)
- if else (二选一)
格式:
if 条件: 结果 else: 结果
例题:
print(1)if 3 > 2: print(11) print(23) my_input = input('请输入你要选择的数字: ') print(my_input)else: print(45)print(3)# 输出结果:11123
- if elif elif (多选一)
格式:
if 条件: 结果 elif 条件: 结果 elif 条件: 结果
例题:
num = int(input('猜点数:'))if num == 1: print('晚上请你吃饭')elif num == 3: print('一起溜达')elif num == 2: print('请你大宝剑')
- if elif elif else (多选一)
格式:
if 条件: 结果 elif 条件: 结果 elif 条件: 结果 else: 结果
例题:
s1 = '100' i1 = int(s1) print(i1,type(l1)) age = input('请输入年龄:') if int(age) > 18: print('恭喜你,成年了') else: print('小屁孩儿')
练习题:
num = int(input('猜点数:'))if num == 1: print('晚上请你吃饭')elif num == 3: print('一起溜达')elif num == 2: print('请你大宝剑')else: print('太笨了....')print('组合')
- if if if if : 多选
用途:
执行多次,只要满足就执行
可以选所有, 也可以一个都不选
格式:
if 3>2: print(1) if 4>3: print(2) if 5>4: print(3) if 6>5: print(4) # 输出结果 1 2 3 4
例题:
num = int(input('猜点数:'))if num == 1: print('晚上请你吃饭')elif num == 3: print('一起溜达')elif num == 2: print('请你大宝剑')
- if 嵌套
格式:
if 条件: 结果 if 条件: 结果 if 条件: 结果 else: 结果 else: 结果 else: 结果
例题:
sex = '女'age = 20if sex == '女':if age > 18: print('进来一坐')else: print('回去上学吧')else:print('滚')# 输出结果回去上学吧
练习题:
username = input('请输入用户名:') password = input('请输入密码:') code = 'qwer' your_code = input('请输入验证码:') if your_code == code: if username == 'taibai' and password == '123': print('登录成功') else: print('账号或者密码错误') else: print('验证码错误')
本节完~