【AI达人养成营】学习笔记
收藏
见代码中注释
shu = 3200
user_shu = input('这台冰箱多少钱\n')
user_shu =int(user_shu)
while user_shu != shu:
if user_shu > shu:
user_shu = input('猜高了,再猜\n')
user_shu = int(user_shu)
if user_shu < shu:
user_shu = input('猜低了,再猜\n')
user_shu = int(user_shu)
print('恭喜你猜对了\n')
print(1+2)
print(2-1)
print(1-2)
print(1*2*3)
print(1/2)
print(1//2)#整除,向下取整
print(1%2)
print(1**2)#幂运算
print(2**2*4+6/2)#结合顺序一般和数学的一样,也可用小括号来提升优先级
shu1 = len('Hello World!')
shu2 = len("Hello world!")
print(shu1)
print(shu2)
python的空值为none,不能理解为0,0也是有意义的
布尔值和布尔代数的表示完全一致,一个布尔值只有True、False两种值布尔值 布尔值可以用and、or和not运算。
注意大小写!
True or False
number = 10
tt = 13
print(number+tt)
number += 199
print(number)
aa = 12.5
cc = 13
bb = int(aa)
dd = float(cc)
print(bb)
print(dd)
xx = bool(3)#bool除了0是false,其余值均返回ture
vv = bool(0)
print(xx)
print(vv)
list1 = [1,2,3,4,5,"a","b"]
list2 = ["d","f","c",'adfaef']
s1 = len(list2)
print(s1)
print(list1)
print(list2)
list2.append('ewjfgter')#往列表后面再加个元素
list2.pop()#默认就是最后一个元素,具体用法暂时还未学会
print(list2)
#tuple元组,和list列表有点像,但一旦初始化就不能再改变
#tuple元组使用(),而list使用[]
tuple1 = (1,2,3,4,5)
tuple2 = ("s","d",'fdsfg')
print(tuple1)
print(tuple2)
可变对象,不可变对象
a = 5
print(id(a))
a = 6
print(id(a))
print(a)
a=5
print(id(a))
#python 内置了字典:dict的支持,使用键值储存具有极快的查找速度
list列表使用[]
tuple元组,使用()
字典集合{}
python中是通过符号来区分吗?字典和集合又怎么区分
word = {'apple':'苹果','banana':'香蕉'}
scores = {'小张':100,'小李':80}
grad = {4:'很好',3:'好',2:'中',1:'差',0:'很差'}
print(word)
print(scores)
print(grad)
a = scores['小张']
b = grad[3]
print(a)
print(b)
#集合set
ch1 = input('输入灯的颜色')
if ch1 == '红灯':
print('请你停车')
elif ch1 == '绿灯':
print('快走')
else:
print('冲过去')
score_chinese = 90
score_math = 70
score_english = 88
if score_english > 80 and score_math > 80 and score_chinese > 80:
print('奖励你小红花')
else:
print('小红花,想啥呢?')
a = int(input('请输入一个数'))
while a<10:
print('还得加',a)
a=a+1
import random
shu_tr = random.randint(1,99) #生成1-99的一个随机数
shu_user = int(input('请在1-99之间猜数'))
while shu_user!=shu_tr:
if shu_user>shu_tr:
print('猜大了')
shu_user = int(input('请再猜'))
else:
print('猜小了')
shu_user = int(input('请再猜'))
print('猜对了,把你能的')
for i in range(9):
print(i+1)
range用法,一般与for搭配
从0生成9个数,0,1,2,3,4,5,6,7,8
fruits = ['banana','apple','mango']
for fruit in fruits:
print('当前水果是',fruit)
##执行结果为
当前水果是 banana
当前水果是 apple
当前水果是 mango
打印1-10中的偶数
for i in range(10):
num = i + 1
if num % 2 == 0:
print(num)
else:
continue
# 可以把continue删掉吗?
#不能
a = float(input())
b = '%.12f'%a
print(b)
a = 15e10
print(a)
b= int(a)
print(b)
a, b= map(int, input().split())#可以空格输入多个变量,相当于C里的scanf("%d%d",&a,&b);
print(a*b)
a, b= map(int, input().split())
c = a/b
d = a%b
print(int(c),int(d))
a, b, c = map(int, input().split())
print(int((a+b)/c))
a,b= map(int, input().split())
c = b/a
print('{:.3%}'.format(c)) #'{:.3%}'.format(c)为python的预格式化,3代表转换成百分数后小数位留3位
a = int(input())
if a%4==0:
if a%100==0 and a%400!=0:
print("N")
else:
print("Y")
else:
print("N")
s = int(input())
t_wlak = s/1.2
t_bike = 27+23+s/3.0
if t_bike>t_wlak:
print('Walk')
elif t_bike=0 and x<5:
y = -x+2.5
elif x>=5 and x<10:
y = 2-1.5*(x-3)*(x-3)
elif x>=10 and x<20:
y = x/2-1.5
print('{:.3f}'.format(y)) #'{:.3}'.format(c)为python的预格式化,3代表小数位留3位
a = int(input())
i = 1
bb = 0
while i1000:
chaoguo = a-1000
cishu = int(chaoguo/500)+1
qian = 8+cishu*4
if b=='y':
qian = qian + 5
print(qian)
a = int(input())
b = a/100
b = int(b)
s = (a-(b*100))/10
s= int(s)
g = (a-(b*100))%10
g = int(g)
print('{}{}{}'.format(g,s,b))#占位符可以去掉空格
a1,a2,n = map(int,input().split())
d = a2-a1
# he = n*a1+(n*(n-1)*d)/2
an = a1+(n-1)*d
print(an)
通过列表做?尝试:失败
a1,a2,n = map(int,input().split())
d = a2-a1
list1 = [1,1]
i = 3
while i<=n:
pp = i-1
temp = int(list1[pp])+d
list1.append(temp)
i = i+1
n,k = map(int,input().split())
baifen = k/100
fangjia = 200
k = 0
# print(baifen)
i=1
while i<=20:
qian = n*i
if i>=2:
fangjia = fangjia*(1+baifen)
if qian>fangjia:
k = 1
m = i
break
i = i+1
if k==0:
print('Impossible')
else:
print(m)
斐波那契数列
k = int(input())
list1 = [1,1]
if k>=3:
i = 3
while i <= k:
temp = list1[i - 3] + list1[i - 2]
list1.append(temp)
i = i + 1
print(list1[k - 1])
else:
print(1)
import math
v = int(input())
i = 1
while i<=v:#控制测试样例数
n = int(input())
x = n#从n开始增,找到最大公约数大于1的数
while 1:
list1 = list(str(x))
chang = len(list1)
pp = 1
su_m = 0
while pp<=chang:
su_m = su_m+int(list1[pp-1])
pp = pp+1
# ii = su_m
# while 1:
# if x%ii==0 and su_m%ii==0:
# break
# ii = ii-1
ii = math.gcd(x,su_m)
if ii>1:
print(x)
break
else:
x = x+1
i = i+1
a = '这是个字符串'
print(isinstance(a,str))
assert 称为断言,当这个关键字后面的条件为假的时候,程序自动崩溃,并抛出AssertionError的异常
assert 3>4
可以用来运行那些必须得为真的程序
list1 = [213,'fdrs','svdfs32',423]
for i in list1:
print(i)
for i in range(9):
print(i)
for i in range(2,9):
print(i)
for i in range(2,9,3):
print(i)
print(list(range(2,9))
切片
a = str(input())
print(a[::-1])
n = int(input())
list1 = [1,1]
yyy = 0
if n>=3:
i = 3
while i <= n:
temp = list1[i - 3] + list1[i - 2]
list1.append(temp)
i = i + 1
yyy = list1[n - 1]
else:
yyy = 1
result = yyy%10007
print(result)
字符串进阶
name = 'money'
print(name[0])
print(name[-4])
print(name[1:4:2])#切片[起始:结束:步长] 字符串[start: end: step] 这三个参数都有默认值,默认截取方向是从左往右的 start:默认值为0; end : 默认值未字符串结尾元素; step : 默认值为1;
#如果切片步长是负值,截取方向则是从右往左的,从左往右是0开始,从右往左是从-1开始计数
print(name[::-1])#从-1开始增加,有倒序输出的作用
0
收藏
请登录后评论