|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 Ice_in_left 于 2019-2-27 19:02 编辑
第五节内容
1.数值类型(部分):
布尔类型,整型,浮点型。
整型:python的整型结合了整型和长整型。所以python很方便进行大数运算。
浮点型:小数类型,python区分整型和浮点型根据小数点。有小数点是浮点型,没有小数点是整型。
布尔类型:表示真(True),假(False)。也是一种特殊的整形。True=1,False=0. (python中可以把True 和False当作1和0参与计算。但是实际上是不妥的。不要在实际应用中这样做。)
2.e记法(科学计数法):
用来表示特别大或者特别小的数。
eg:a=0.0000000000000000000000000025
print(a)
2.5e-27
eg:1.5e11
150000000000.0
15e10
150000000000.0
3.数据类型转换:
3.1. 转换为字符串:str()
3.2. 转换为整数:int()
3.3. 转换为浮点型:float()
3.1.1 字符串转换为整数的时候字符串必须是数字。无法完成 int('小甲鱼') 会报错。
eg: str(5.99) 的结果为'5.99';
str(5e19) 的结果为:'5e+19';
3.2.1 python处理浮点型转化为整数的时候是正数是向下取整的。对于负数则刚好相反 —— 是向上取整。
eg: int(5.99) 的结果为5 ;
3.2.2 四舍五入的简易写法:int(x+0.5)
“四舍五入”结果为:5,int(5.4+0.5) == 5
“四舍五入”结果为:6,int(5.6+0.5) == 6
3.3.1 转化浮点型的时候:
eg: float('520') 的结果为 520.0;
float(520) 的结果为: 520.0;
4.获取关于类型的信息
4.1 type()
eg: type('520') 的结果为 <class 'str'>
type(520) 的结果为 <class 'int'>
type(True) 的结果为 <class 'bool'>
type(5e15) 的结果为 <class 'float'> 注:e记法就是浮点型的一种。
4.2 isinstance()
isinstance('520',str) #两个参数,第一个为要判断类型的内容或者变量,第二个为要判断的类型。如果内容或者变量符合对应的类型则返回 True 反之返回 False。
4.3 对于 type() 和 isinstance() 建议使用 isinstance(),因为它的返回结果比较直接,另外 type() 其实并没有你想象的那么简单
5.Python3 可以给变量命名中文名
Pyhton3 源码文件默认使用utf-8编码(支持中文)。
6.isdigit
Python中 isdigit() 方法检测字符串是否只由数字组成。
s 为字符串
s.isalnum() | 所有字符都是数字或者字母,为真返回 True,否则返回 False。 | s.isalpha() | 所有字符都是字母,为真返回 True,否则返回 False。 | s.isdigit() | 所有字符都是数字,为真返回 True,否则返回 False。 | s.islower() | 所有字符都是小写,为真返回 True,否则返回 False。 | s.isupper() | 所有字符都是大写,为真返回 True,否则返回 False。 | s.istitle() | 所有单词都是首字母大写,为真返回 True,否则返回 False。 | s.isspace() | 所有字符都是空白字符,为真返回 True,否则返回 False。 |
例如:
>>> s = 'I LOVE FISHC'
>>> s.isupper()
>>> True
7. 补充知识点
Python数据类型转换
有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。
以下几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值。
函数 | 描述 | int(x [,base]) | 将x转换为一个整数 | long(x[, base] ) | 将x转换为一个长整数 | float(x) | 将x转换到一个浮点数 | complex(real[, imag]) | 创建一个复数 | str(x) | 将对象 x 转换为字符串 | repr(x) | 将对象 x 转换为表达式字符串 | eval(str) | 用来计算在字符串中的有效Python表达式,并返回一个对象/td][/tr]
| tuple(s) | 将序列 s 转换为一个元组 | list(s) | 将序列 s 转换为一个列表 | set(s) | 转换为可变集合 | dict(d) | 创建一个字典。d 必须是一个序列(key, value)元组。 | frozenset(s) | 转换为不可变集合 | chr(x) | 将一个整数转换为一个字符 | unichr(x) | 将一个整数转换为Unicode字符 | ord(x) | 将一个字符转换为它的整数值 | hex(x) | 将一个整数转换为一个十六进制字符串 | oct(x) | 将一个整数转换为一个八进制字符串 |
8. 改进游戏
- import random
- times = 3
- secret = random.randint(1,10)
- print('------------------我爱鱼C工作室------------------')
- guess = 0
- print("不妨猜一下小甲鱼现在心里想的是哪个数字:", end=" ")
- while (guess != secret) and (times > 0):
- temp = input()
-
- if temp.isdigit():
- guess = int(temp)
- if guess == secret:
- print("我草,你是小甲鱼心里的蛔虫吗?!")
- print("哼,猜中了也没有奖励!")
- else:
- if guess > secret:
- print("哥,大了大了~~~")
- else:
- print("嘿,小了,小了~~~")
- if times > 1:
- print("再试一次吧:", end='')
- else:
- print("机会用光咯T_T")
- else:
- print("抱歉,您的输入有误,请输入一个整数:", end='')
- times = times - 1 # 用户每输入一次,可用机会就-1
- print("游戏结束,不玩啦^_^")
复制代码
第六节内容
1.算数操作符:
+ - * / % ** //
加 减 乘 除 取余 幂运算 地板除
2. 加减乘除 地板除
eg:a = 5
a = a +3
a += 3
a = 11
b = 3
b -= 1
b = 2
a = b = c = d = 10
a += 1 a=11
b -= 3 b=7
c *= 10 c=100
d /= 8 d=1.25
地板除法:整数除以整数,默认返回一个整数类型。(向下取整)也就是丢掉多余的小数。
在python3除法已经是真正的除法了,/是直接的除法不再是地板除法。在python中 //执行的则是地板除法。
关于地板除法我找到一个说的挺好的帖子,这里引用一下。“地板除”还是“取整除”
地板除法例子:
eg:10//8 #结果是1
3.0//2 #结果是1.0
3. %求余:
eg:
4. **幂运算:
eg:
5.优先级问题:
所以先乘除后加减遇到括号里的先算括号里面的。
eg:-3 * 2 + 5 / -2 -4 #结果是-12.5
比较操作符比逻辑操作符优先级高
eg:3 <4 and 4 < 5 #结果是True
- 被当做负号使用的时候是一元操作符(单目操作符)
幂运算操作符比其左侧的一元操作符优先级高,比其右侧的一元操作符优先级低。
eg: -3 ** 2 #结果是-9
-(3 ** 2) #上式解释为本式
3 ** -2 #结果是0.1111111111111111
3 ** (-2) #上式解释为本式
6.比较操作符:
7.逻辑操作符:
and:左侧右侧同时为真。(True)则结果为真(True)。
or :只需要左边或者右边两边任意一边为真(True)那么结果为真(True)。两边同时为假(False)时,结果才为假(False)。
not:操作符是一元操作符。只有一个操作数,做取反操作。
eg:not False #结果是True
not True #结果是False
not 0 #结果是True
not 4 #结果是False (非0的数默认为True)
在python还可以这样写:
eg:3 < 4 < 5 #结果是True
被解释为:3 < 4 and 4 < 5
逻辑操作符优先级 not > and >or 。
手动下一页!《零基础入门学习Python》第七第八第九 《了不起的分支和循环》笔记 |
|