Python基础学习6(python的数据类型)
- ‘520’和520
‘520’是字符串,520是单纯的数字
字符串操作:一些数值类型:
整形:整数
浮点型float:带小数点
布尔类型bool:特殊的整型(可进行计算:T理解为1,F理解为0)
e计法:科学记数法(浮点型)
类型的转化:
int():浮点数、字符串转化为整数(浮点转化时留小数点前一位)
float():整数,字符串转化为浮点数
str():其他形式转化为字符串
type函数:type(a)显示a的类型
isinstanceisintance(a,int)(a若为int,结果未t)
课后习题:
0. 在 Python 中,int 表示整型,那你还记得 bool、float 和 str 分别表示什么吗?
布尔类型,浮点型,字符串
-
你知道为什么布尔类型(bool)的 True 和 False 分别用 1 和 0 来代替吗?
由于二进制只有两个数:0 和 1,因此用 0 和 1 来表示 False 和 True ,节约转换的资源 -
使用 int() 将小数转换为整数,结果是向上取整还是向下取整呢?
向下 -
我们人类思维是习惯于“四舍五入”法,你有什么办法使得 int() 按照“四舍五入”的方式取整吗?
5.4 “四舍五入”结果为:5,int(5.4+0.5) == 5
5.6 “四舍五入”结果为:6,int(5.6+0.5) == 6 -
取得一个变量的类型,视频中介绍可以使用 type() 和 isinstance(),你更倾向于使用哪个?
isinstance,返回数值便于机械运算 -
Python3 可以给变量命名中文名,知道为什么吗?
Pyhton3 源码文件默认使用utf-8编码(支持中文),这就使得以下代码是合法的: -
【该题针对零基础的鱼油】你觉得这个系列教学有难度吗?
-
针对视频中小甲鱼提到的小漏洞,再次改进我们的小游戏:当用户输入错误类型的时候,及时提醒用户重新输入,防止程序崩溃。
s.isalnum函数:(s为字符串)
s.isalnum() 所有字符都是数字或者字母,为真返回 Ture,否则返回 False。
s.isalpha() 所有字符都是字母,为真返回 Ture,否则返回 False。
s.isdigit() 所有字符都是数字,为真返回 Ture,否则返回 False。
s.islower() 所有字符都是小写,为真返回 Ture,否则返回 False。
s.isupper() 所有字符都是大写,为真返回 Ture,否则返回 False。
s.istitle() 所有单词都是首字母大写,为真返回 Ture,否则返回 False。
s.isspace() 所有字符都是空白字符,为真返回 Ture,否则返回 False。
import random
secret = random.randint(1,10)
print('------------------给我爬---------------')
#输入猜测数值#
teep = input ("猜一下心里想的是哪个数字")
while not teep.isdigit() :
teep = input ("重新输入")
guess = int (teep)
if guess == secret:
print('LUCKY GUY')
else:
#对一次输入的数值给出提示#
if guess > secret:
print("bigger than it")
else:
print('smaller')
#提示循环#
i=1
while guess != secret and i<3:
teep = input ("input again")
guess = int (teep)
i=i+1
if guess == secret:
print ("666")
else:
if guess > secret:
print("smaller")
else:
print('bigger than that')
print('GAME OVER')
- 写一个程序,判断给定年份是否为闰年。(注意:请使用已学过的 BIF 进行灵活运用)
teep = input('pls input a datayaer')
while not teep.isdigit() :
teep = input ("重新输入")
guess = int (teep)
if not isinstance(guess%4,int):
if isinstance(guess%100,int):
if isinstance(guess%400,int):
print('n')
else:
print('y')
else:
print('n')
else:
print('n')
Python学习7(操作符)
算数操作符
基本操作符
‘+ - * / % **(幂运算) //(地板除)
+=左加 -=左减 *=左乘 /=左除
除法获得浮点数
优先级:
先加减后乘除
比较>逻辑
一元操作符>二元操作符>算术操作符>比较操作符>逻辑操作符
特殊:幂操作符比左侧的优先级高
比较操作符号:= < > <=
**逻辑操作符:**and or not
-
Python 的 floor 除法现在使用 “//” 实现,那 3.0 // 2.0 您目测会显示什么内容呢?
1.0 -
a < b < c 事实上是等于?
(a<b)and(b<c) -
不使用 IDLE,你可以轻松说出 5 ** -2 的值吗?
0.04 -
如何简单判断一个数是奇数还是偶数?
%2 -
请用最快速度说出答案:not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9
答案是:4
not or and 的优先级是不同的:not > and > or
- 还记得我们上节课那个求闰年的作业吗?如果还没有学到“求余”操作,还记得用什么方法可以“委曲求全”代替“%”的功能呢?
if year/400 == int(year/400)
动动手:
- 请写一个程序打印出 0~100 所有的奇数。
i=0
while i<=100:
if i%2==1:
print('%d'%(i))
i=i+1
else:
i=i+1
-
我们说过现在的 Python 可以计算很大很大的数据,但是…真正的大数据计算可是要靠刚刚的硬件滴,不妨写一个小代码,让你的计算机为之崩溃?
爱因斯坦曾出过这样一道有趣的数学题:有一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后刚好一阶也不剩。
(小甲鱼温馨提示:步子太大真的容易扯着蛋~~~)
题目:请编程求解该阶梯至少有多少阶?
91
i=1
while ((i+1)%2)or((i+2)%3)or((i+4)%5)or((i+5)%6)or(i%7):
i=i+1
print(i)
改进:
i=7
n=1
while ((i+1)%2)or((i+2)%3)or((i+4)%5)or((i+5)%6)or(i%7):
n=n+1
i=7*n
print(i)