天天看點

格式化輸出,基本運算符,流程控制主if

5.5自我總結

一.格式化輸出

1.占位符

a = 1
b = 2
print('%S %s'%(a,b))
#1 2
print('%s %s'%(1,2))
#1 2
           

2.format格式化

a = 1
b = 2
print('{} {}'.format(a,b))
#1 2
print('{}次數{}次數'.format(a,b))
#1次數2次數
print('{}'.format("a"))
#好
print('{0} {1}'.format(a,b,1,2,3,4))
#1 2
print('{} {}'.format(a,b,3,5,6,7))
#1 2
#format格式化比占位符優點,他可以format後面的值的數量比前面多,但是不能前面值比後面多,如果用占位符可以一一對應。
           

3.f-string格式化

a= 10 
b =11
print(f'{a} {b}')
           

二.基本運算符

1.算術運算

就是普通的加減乘除,無非就是不同資料類型中的加減與乘除會有點差別不同

#數字類型
a = 1
b = 2
print(a+b) #3
print(a*b) #2
#字元串類型
a = '1'
b = '2'
print(a+b)#12
print(a*b)#報錯
print(a*2)#11也就相當于print(a+a)

           

2.比較運算

> 大于
< 小于
!= 不等于#不存在!<不大于以及!>不小于這樣寫法
<=小于等于
>=大于等于
           

3.指派運算

其中資料類型會使得結果會發生點變化

a = 1
b = 1
b += a#等同于b = a+b
print(b)
2
a = '1'
b = '1'
b += a
print(b)
11
           

```個人了解``

其寫法就是 a (運算符号)= b 其等效與 a = a(運算符号)b
           

4.身份運算

其實就是變量值在記憶體中位置的計算

a = 10
b = 10
a is b等效與id(a)==id(b)
           

5.鍊式指派

其實就是一種寫法

a = 10
b = a
c  = b
按照鍊式指派的寫法也就是a =b =c =10
           

6.交叉指派

a = 266
b = 300
#我們要把a 與 b的值進行替換
#錯誤示範,這樣表面看上去值是變了,但是其中266的id不是原來266的id他們不是同一個266
b = 266
a = 300
#不用交叉指派
c = a
a = b
b = c
#實用交叉指派
a,b=b,a	

           

7.解壓縮運算

用于一次性讀寫出清單裡的内容,以及字典中的key

#清單中的值
yang_wen_yi_info_list = ['yangwenyi',25,172,130,['lol','ps']]
name,age,height,weight,hobby = yang_wen_yi_info_list
print(name)
print(age)
print(height)
print(weight)
print(hobby)
#
yangwenyi
25
172
130
['lol', 'ps']
#如果我們隻要把其中的25數值賦予age
#第一種方法
_,age,*_ = yang_wen_yi_info_list
#第二種方法
name,age,height,weight,hobby = yang_wen_yi_info_list
#第三種方法
_,age,_,_,_ = yang_wen_yi_info_list
#再字典中取關鍵字
yang_wen_yi_info_dict = {
    'name':'yangnweyi',
    'age' : 25,
    'height' : 172,
    'weight' : 130,
    'hobby' : ['ps',''lol]
}
#知道其中所有的key
name,age,height,weight,hobby = yang_wen_yi_info_dict
print(name,age,height,weight,hobby)
#補充如果讓字典中的所有key以清單形式出現
key = list(yang_wen_yi_info_dict.keys())
print(key)
['name', 'age', 'height', 'weight', 'hobby']
           

8.邏輯運算符

1.and

1>2 and 3>2 and 1>0 #如果AND第一個就為false,後面不管寫什麼系統都不會再接着往下看了
False
           

2.or

1>2 or 2>1#其中隻要一個√答案就為True
True


           

3.not

1>2
False
not 1 >2
Ture
not 1 >2 and 2>1
Ture
not (1 >2 and 2>1)
Ture
           

三.流程控制

1.if....else

注意點if與else并列,且後面要加:下一級别前面加tab

2.if...elif...else

注意點if,elif,else并列,且後面要加:下一級别前面加tab

四.今日題目

  1. 使用格式化輸出的三種方式實作以下輸出(name換成自己的名字)
name = 'Nick'
height = 180
weight = 140

# "My name is 'Nick', my height is 180, my weight is 140"
#下面幾種方法前面變量設定都相同如下
name = 'yangwneyi'
height = 172
weight 135
#第一種
print(f'My name is {name}, my height is {height}, my weight is {weight}')
print(F'My name is {name}, my height is {height}, my weight is {weight}')
#第二種
print('My',"name","is",name+',','my','height','is',str(height)+',','my','weight','is',weight)
print('My name is',name+',','my height is',str(height)+',','my weight is',weight)
#第三種
print('%s %s, %s %s, %s %s'%('My name is',name,'my height is',height,'my weight is',weight))
#第四種
print('My name is {}, my height is {}, my weight is {}'.format(name,height,weight))
#第五種
print('My name is'+' '+name+','+' '+'my height is'+' '+str(height)+','+' '+'my weight is'+' '+str(weight))
print('My'+' '+'name'+' '+'is'+' '+name+','+' '+'my'+' '+'height'+' '+'is'+' '+str(height)+','+' '+'my'+' '+'weight'+' '+'is'+' '+str(weight))
           
  1. 整理《基本運算符》部落格,并給出url連結:
  2. 一行代碼實作下述代碼功能:
x = 10
y = 10
z = 10
#x = y = z = 10
           
  1. 兩種方式交換x和y的值:
x = 10
y = 10
x,y = y,x
           
  1. 一行代碼取出該清單的第2、3個愛好:

    nick_hobby_list = ['read','run','music','code']

    _,hobby_2,hobby_3,_ = nick_hobby_list
               
  2. 使用代碼實作以下業務邏輯:
    1. 輸入姑娘的年齡後,進行以下判斷:
      1. 如果姑娘小于18歲,列印“未成年”
      2. 如果姑娘大于18歲小于25歲,列印“表白”
      3. 如果姑娘大于25歲小于45歲,列印“阿姨好”
      4. 如果姑娘大于45歲,列印“奶奶好”
#作業答案
age = input('請用阿拉伯數字輸入您的年齡')
age = int(age)
if age < 18:
    print('未成年')
elif age > 18 and age <25:
	print('表白')
elif age>25 and age<45:
    print('阿姨好')
elif age > 45 :
    print('奶奶好')
else:
    print('我猜你年齡肯定是18,25,45中間其中一個是不是')
#擴充
age = input('請用阿拉伯數字輸入您的年齡')
age = int(age)
if age < 18:
    print('未成年')
elif age > 18 and age <25:
    contatc_info = input('小姐姐請輸入你的微信聯系方式')
    print('拜拜,小姐姐')
elif age>25 and age<45:
    print('阿姨好')
elif age > 45 :
    print('奶奶好')
else:
    if age == 18:
        contatc_18_info = input('小妹妹請輸入你的微信聯系方式')
        print('謝謝配合')
    elif age ==25:
        print('即将邁入老阿姨的大軍中')
    else:
        print('奶奶好')