本文主要是介绍Preparatory Class-Day2-变量赋值、输入输出、进制转化、数据类型、数值类型及其转化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、 变量赋值
""" 变量:使用指定名称开绑定特定值 格式: 变量名 = 变量值 注意:将变量名绑定到变量值上。 赋值而不是等于, 实际上是给变量贴标签 """ a = ("hello world") print(a)#1. 变量定义的内存结构 b = 123 此时Python解释器做了两件事: 1> 分配内存,创建了123, 2> 分配内存,创建b 3> 将b指向123#2 多变量指向同一内存(不可变类型:字符串和数字) c = 123 1> 分配内存c 2> c指向123(因为123是基础数据类型,计算机很聪明,认为是基础数据类型的,就直接使用 已有的内存,不再新创建了。所谓基础的数据类型,在python中有字符串,有数 字,都属于基础数据类型,这些数据类型是在内存级别的类型,也就是在内存中 创建一次。如果再次使用,会先做查找,是否已存在,如果存在,则不再新创建) 注意:123仍然使用第一次创建的内存 #3. 同时为多个变量赋值 b = c = 3 b=c 实际上变量名无法相等,只能是指向的变量相等,即 绑定的是指向c变量名指向的变量值。 #4. 修改变量的指定 b = "Hello World" 1> 内存中创建"Hello World" 2> 跟已定义的变量值解绑 3> 绑定新的变量值 # Python变量赋值,可以赋值任何类型。---鸭子类型(duck typing) """ 5. 变量赋值注意点 (1)变量名必须是大小写英文字母,和数字、下划线的组合,其中数字不能开头 # 支持中文变量名,但是尽量不要用 (2)变量在使用之前必须赋值,赋值后才能被创建 (3)变量没有类型,可以使用一个变量,通过赋值,指定不同类型对象。 """ 练习: 答应结果,画出内存图 x = "abc" y = x x = 123 print(y)
# 交换变量 x = 1 y = 2 print("x =", x) print("y =", y)# 中间值 temp = x x = y y = temp#6. 平行赋值 x = 2 y = 1 x, y = y, x # 简化了数据交换过程 print("x =", x) print("y =", y)
二、 注释
""" 注释: 对程序进行解释说明 Python解释器对注释内容进行忽略处理 注释分为两种: 1> # 单行注释 “#”,忽略从#直到当前行结束的内容 注意:"三引号"不是注释 a = """123""" print a 2> # 特殊注释 """ a = """123""" print (a)三、输入输出
"""" 输出 语法:print 后台打印 属于内建(内置)方法(函数) """ print(1) print("Hello World", "\n", "Python")# 结束字符,end默认为\n,可以对结束字符进行修改 print("hello",end="*&—— ———&*") print("hello",end="\n")"""" 输入:后台输入 input函数,括号内可以加入字符串作为提示信息 # input是阻塞函数,会一直等待用户输入 """ # input() name = input("请输入名字:") print ("刚刚输入的名字是: ",name)四、练习:猜数字小游戏
"""
入门游戏---猜数字
1. 输入input函数用法,包括end方法和输出格式为字符类型
2. 随机数字函数random.randint(a,b),输出格式为字符类型
"""
import random# 初始化
judge = 1
dur_start = input("从多少开始:")
dur_end = input("到多少结束:")# 随机函数random.randint(a,b),输出格式为字符串类型
result = int(random.randint(int(dur_start), int(dur_end)))
guess = int(input("请猜一个整数,大小在({}-{})间:").format(dur_start, dur_end))while judge:judge = guess - result# 注意用双等号,末尾用冒号# 注意:temp是字符串类型,需要修改格式!!!!if judge == 0:print("你猜对了", end="BBBut-")print("猜对也没用")judge = 0else:if judge > 0:print("你猜太大了", end="---")else:print("你猜太小了", end="---")guess = int(input("请重新猜一个整数,大小在({}-{})间:").format(dur_start, dur_end))
print("Game Over")
五、数据类型
按照种类分:数值类型:整数、浮点、复数、布尔型 序列类型:列表、元组、字符串 映射类型:字典 集合类型:集合
按照可修改性分:
不可变数据:Number(数值)、String(字符串)、Tuple(元组); 可变数据:List(列表)、Dictionary(字典)、Set(集合)-------------(六大基本数据类型)
- 整型
- 定义方式:
a = 123
- 查看格式
print(type(a))
- 取值范围(无限)
- **##& 进制转化 &##**
其中十六进制:
0-9 + a-f/A-F
(1)十进制转其他进制----除进制取余(下除法,从下到上)
(2)其他进制转十进制-----乘幂法
(3)二进制转8进制
5. 布尔类型-----是整型的子类
True-1/False-0 ***注意需要大写
- 浮点型
1. 只支持十进制小数,不支持其他进制
2. 支持科学计数法
f1 = 0.000012 = 1.23e-5
3. 取值范围
单精度型占4个字节(32位)内存空,双精度型占8个字节(32位)内存空
4. 浮点型不精确性
print(1 / 3) - -- 0.3333333333333333 print(10 / 3) - -- 3.3333333333333335 print(0.1 + 0.3)
- 复数型
x = 1 + 3j, 实部和虚部都是浮点型 print(type(x)) print(x.real) print(x.imag)
- 数值类型转换
int(value) - ---转化为整数,取整 # int() 默认返回0 float(value) ----转化为浮点类型 # float() 默认返回0.0 bool(value) - --- 转化为布尔类型 # 如果值为0,则转为False # 默认值为False complex(value) - ----转化为复数 # 实数转化时,添加'0j',虚部参数为0*** 复数类型不能转化为整型、浮点型
*** 任何类型可以转布尔类型;
*** bool(0j) == False, 其余为True
- 数值类型运算优先级
# 整型 < 浮点型 < 复数类型, 加法类型取最高级别类型
这篇关于Preparatory Class-Day2-变量赋值、输入输出、进制转化、数据类型、数值类型及其转化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!