天天看點

Python第一課

一、基礎文法:

1、注釋:#       

print("hello"+"world")  #這是個print      

2、數字

整數:不區分long和int

  1. 進制:0xa(16進制)、0o10(十進制)、0b10(二進制)
    bool,兩個值:True、False      

浮點數

  1. 1.2,2.35,3.1415,-0.12,1.46e9 ==1.46*(10**9)      

複數:

1+2j      

3、字元串

使用‘ “單雙引号引用的字元的序列           

print("hello,world")      

''' 、""",使用單雙三引号,可跨行,可在其中自由使用雙引号、單引号

  ''' welcome "to"
        1\
        2\
        3\
        
        'python' '''      

#再嘗試一下_  用print(_),其中的換行也會列印出來,若再前面        加上r,就不會再換行

在字元串前面加上r或者R,表示該字元串不做特殊處理

部分特殊字元,類似于\n換行這種   

4、轉義序列

\\   \t   \r   \n   \'    \''      

字首r,看上面

5、縮進

約定4個縮進      

6、續行

\這個符号是續行符    不過在括号内不用,不在括号内需要加上      

7、辨別符

一個名字,指代一個值
隻能用字母或者下劃線和數字,但數字不能開頭
不能用關鍵字,類似于def、class
大小寫敏感      

8、常量:(python中無常量)

字面常量-->一個單獨的量:12,abc,2341212125.03e-9      

9、運算符

%和**   求餘和乘方,開方也是**,開平方是8**0.5
//整除      

10、比較運算符

==   !=(不等于)    >    <      >=     <=
+=(c+=a表示c=c+a)  -=  *=  /=  %=(後面如第一個)
and     or      not   
in            not in
is             is not      

11、if

12、真假:

空清單、空字元串、空字典、空元組、None、0為假      

13、

while、for、continue、break、else      

練習題:

1、列印一個正方形

num = int(input(">>>"))
for i in range(1,num+1):
    if i == 1 or i == num:
        print(num*"*"" ")
    else:
        print("*",(2*num-5)*" ","*")      

2、判斷一個質數

num =int(input(">>>"))
for i in range(2,num):
    if num%i==0:
        print("Not prime")
        break
else:
    print("prime")      

3、求100内所有奇數的和

sum =0
for i in range(1,100,2):
    sum+=i
print(sum)      

4、給定一個數字,列印這是幾位數并倒序排列出來

num = int(input(">>>"))
count=1
while True:
    print(num%10)
    num=num//10
    count+=1
    if num//10==0:
        print(num//1)
        print("這是"+str(count)+"位數")
        break      

5、判斷學生成績,90以上為A,80-90為B,70-80為C,60-70為D,60以下為E

sorce=int(input(">>>"))
if sorce>= 90:
        print("A")
elif 80<=sorce<90:
        print("B")
elif 70<=sorce<80:
        print("C")
elif 60<=sorce<70:
        print("D")
else:
        print("E")      

6、求1-5的階乘之和

num=1
sum=0
for i in range(1,6):
    num*=i
    sum+=num
print(sum)      

7、九九乘法表

for i in range(1,10):
    for j in range(1,i+1):
        print(str(i)+"*"+str(j)+"="+str(i*j)+" ",end="")
    print()      

反向

for i in range(1,10):
    if i >1:
        print((i-1)*"      ",end="")
    for j in range(i,10):
        p=i*j
        if p<10:
            print(str(i)+"*"+str(j)+"="+str(i*j),end=" ")
        else:
            print(str(i)+"*"+str(j)+"="+str(i*j),end="")
    print()      

8、前一百的斐波那契

i=1
j=1
while i<100:
    print(i)
    i,j=j,i+j      

9、第一百零一斐波那契

i=1
j=1
count=0
while True:
    i,j=j,i+j
    count+=1
    if count==100:
        print(i)      

10、十萬内素數

for i in range(1,100000,2):
    for j in range(2,int(i**0.5)+1):
        if i%j==0:
            break
    else:
        print(i)      
for i in range(1,10):
    if i <=5:
        print((5-i)*" ",(i+(i-1))*"*")
    if i >=6:
        n+=3
        print((i-5)*" ",(i-n)*"*" )      
for i in range(-3,4):
    if i<0:
        x=-i
    else:
        x=i
    print(' '*x+'*'*(7-x*2))      
p=1
for i in range(1,10):
    p=2*(p+1)
print(p)