Logo

老爷的幼儿园第三天

25 July 2018

print("没有大佬的日子好难受呀")

print("断剑重铸之日 骑士归来之时。")
>>> "Hello " * 3
'Hello Hello Hello '

也可以这样子用

Comparison这个很重要 就记得这些就行了。还有一些好像 and, or, not 也是要记得

x or y # if x is False then y otherwise x
x and y # if x is False then x otherwise y
not x # if x is True then False, otherwise True
>>> "H" in "Hello"
True

你看看这个图。

True or False 一定是True True and False 一定是False 这个真没办法 就是记得就行了。有些基础的学问就是要记得 你多做 多看就 会记得了。

Python用colon symbol(:)来分辨那个code在哪里开始哪里结束。 如果是其它static的语言 都是用{} 像Java 这些都是这样子的。

a = 1
b = 2

if a > b: # If block starts here
    print(a) # This is part of the if block
else: # else must be at the same level as if
    print(b) # This line is part of the else block

还有个elif

你要记得因为没有{} 所以python有indenation 是用space(空格) 你也可以用tab。 tab就是在Q旁边的那个键。space一般是2个或者4个(超级推荐用4个 我看到的好像都是4个)。我喜欢用tab(一般tab就直接给你4个space 要是没有 就在ide里面设定一下)。

Loop

有两种loop 一种叫for loop 还有一种叫while loop,for loop用的可能会 比较多 不过这两个个有不同的用处 我也是如果两个都可以 我还是喜欢for loop 多一点。不过有时候while会更好 所以这个要看你怎么想的。

primes = [2, 3, 5, 7]
for prime in primes:
    print(prime)

for x in range(5):
    print(x)  

range很简单就是0-4 你要记得电脑是从0开始数的 如果说range(5)就是 0,1,2,3,4 这个要记得 从0 开始。

for x in range(3, 6):
    print(x)

当然你也可以设定它开始的数字 这里就是3开始到6 可是不会数到6 所以会是3,4,5

for x in range(3, 8, 2):
    print(x)

这个就有意思了 你不止可以设定开始和结束的数字 你还可以设定它们一次性以多少数字 的叠加上去 这个就是3到8以2的速度来叠加 所以这个就会是3,5,7

count = 0
while count < 5:
    print(count)
    count += 1  # 你还可以这样子写 count = count + 1

这个是说只要count小于5就跑这个 count < 5是哪个逻辑 count = 0是base count +=1就是说每一次跑count就加1 这样子早晚count不会比5小 你如果 没有count +=1的话 count永远不会改变 会小于5 就会有无限loop 就是不会停止的loop。 这个要小心。记得要有base condition 还有改变那个base的code 要不这个program 会出现问题。

有两个keywords叫break和continue 这个和它们字面的意思一样 continue就是继续 break就是出来。

count = 0
while True:
    print(count)
    count += 1
    if count >= 5:
        break #就一直让program加 只要count是大于或者对于5 就跳出来。
for x in range(10):
    # Check if x is even
    if x % 2 == 0:
        continue //如果这个数目是可以处于2的话就继续 也就是说什么也不做 因为会到这里 这里什么也没有 如果没有就会到下面那个print那里去 所以
        #这里会print出来all odd number 1,3,5,7,9
    print(x)
count=0
while(count<5):
    print(count)
    count +=1
else:
    print("count value reached %d" %(count))

for i in range(1, 10):
    if(i%5==0):
        break
    print(i)
else:
    print("this is not printed because for loop is terminated because of break but not due to fail in condition")
numbers = [
    951, 402, 651, 360, 69, 408, 319, 601, 485, 980, 507, 725, 547, 544,
    615, 83, 165, 141, 501, 263, 617, 865, 575, 219, 390, 984, 592, 236, 105, 942, 941,
    386, 462, 47, 418, 907, 344, 236, 375, 823, 566, 597, 978, 328, 615, 953, 345,
    399, 162, 758, 219, 918, 237, 412, 566, 826, 248, 866, 950, 626, 949, 687, 217,
    815, 67, 104, 58, 512, 24, 892, 894, 767, 553, 81, 379, 843, 831, 445, 742, 717,
    958, 609, 842, 451, 688, 753, 854, 685, 93, 857, 440, 380, 126, 721, 328, 753, 470,
    743, 527
]

试试做这一题。Loop这个array 如果那个找出全部的even number。