第三章 成为高手前必须知道的一些基础知识
3.1 变量
一个值的名字,存储在内存中,我把把这块内存称为变量,大多数语言,把这个过程称之为,给变量赋值,把值存储在变量中。
Python这里的做法稍有不同,他不是把值存储在变量中,更像是把名字,贴在值的旁边。
变量之所以叫变量是因为是可变的。
变量是可以相加的,其实就是字符串的拼接。
3.2 字符串
如果是两个数字相加,Python会直接告诉你结果,如果是字符串相加,就变成字符串的拼接了。
创建字符串,就要在字符两边加上引号,单引号,双引号都可以,但是必须成对出现。遇到需要输出一些特殊符号的,需要转义。
3.3 原始字符串
针对反斜杠好像是一个好东西,但是\now 缺出现了意外,因为\n 刚好是换行符,所以使用反斜杠来转义反斜杠也可以,但是Python还有一种更简洁的方法,就是使用原始字符串,只需要在字符的前加一个英文字符r即可
3.4 长字符换
""" """
''' '''
3.5 改进之前的游戏,大致三个方面。
(1)当用户猜错,给点提示。
(2)每运行一次只能猜一次,提供三次机会,至少三次。
(3) 每次运行答案都是随机出现。
3.6 条件分支
if 条件:
条件为真 执行的操作
else:
条件为假的操作
if guess == secret:
....
else:
if guess > secret:
大了
else:
小了
3.7 初始循环
while 条件:
条件为真执行的操作
temp = input("不妨猜一下小甲鱼现在心里想的哪个数字:") guess = int(temp) while guess != 8: if guess > 8: print("哥,大了!") else: print("哥小了!") temp = input("请再试试吧:") guess = int(temp) print("哎呀,你是小甲鱼心里的蛔虫吗!")
3.8 引入外援,实现数据随机
import random secret = random.randint(1,10) temp = input("不妨猜一下小甲鱼现在心里想的哪个数字:") guess = int(temp) times = 1 while (guess != secret) and (times < 3): if guess > secret: print("哥,大了!") else: print("哥,小了!") temp = input("请再试试吧:") guess = int(temp) times += 1 if times < 3: print("哎呀,你是小甲鱼心里的蛔虫吗!") print("哼,猜中也没有奖励!") else: print("已经给了你三次机会了,不跟你玩了!")
3.9 闲聊数据类型
3.9.1 整形
整形就是常见的数字,Python3 已经与长整型进行了无缝结合,类似于Java的biginteger,长度不受限制,取决于计算的内存总数。
3.9.2 浮点型
浮点型就是所说的小数
3.9.3 布尔类型
对错,true 或者 false
3.9.4 类型转换
int() float() str()
3.9.5 获得关于类型的信息
type 函数
isinstance(a,str) #返回true 或者false
3.10 常用操作符
3.10.1 算术操作符
+ - * / % ** //
这里Python针对除法,使用了真正的除法,如果使用地板除,就使用//。
百分号 % 表示求余数的意思
>>> 5 % 2
1
>>> 4 % 2
0
>>> 520 % 14
2
>>>
3.10.2 优先级的问题
先乘,除,后加,减,有括号先计算括号里面的
3.10.3 比较操作符
< <= > >= == !=
比较操作符表达式的值,返回的是布尔类型
3.10.4 逻辑操作符
and or not
>>> 3 > 4 and 4 < 5
False
>>> 3 < 4 and 4 < 5
True
>>> 3 > 4 or 4 < 5
True
>>> 3 > 4 or 4 > 5
False
>>> not True
False
>>> not 0
True
>>> not 4
False
>>> 5 > 3 < 4
True
>>> 5 > 3 and 3 < 4
True
>>>
目前所有操作符的优先级顺序为:
** 幂操作符
+x -x 正负号
* / // + - 算术运算符
比较云算法 < <= > >= == !=
逻辑运算符 not and or
待续。