python for循環內輸出和外輸出方式
通過for循環求和,結果發現輸出完全不一樣,一個循環是輸出每一步的結果,另一個循環是輸出最終一次的結果,今天終于弄懂了。
如下所示:補充:python中for循環輸出(index,value)的兩種方法
index索引
value索引值
方法一、利用enumerate()list1=[’a’,’s’,’d’,’g’]for index,value in enumerate(list1): print(’索引:%d,索引值:%s’%(index,value))
輸出結果:
索引:0,索引值:a
索引:1,索引值:s
索引:2,索引值:d
索引:3,索引值:g
方法二、利用range(len())list1=[’q’,’w’,’e’,’r’]for i in range(len(list1)): print(’索引:%d,索引值:%s’%(i,list1[i]))
輸出結果:
索引:0,索引值:q
索引:1,索引值:w
索引:2,索引值:e
索引:3,索引值:r
補充:Python 最基本的語法(輸入輸出,for循環)
Python-入門中的入門——打印日歷
歷程:大一上半年C++書中的案例,連注釋帶上代碼一共二百行,當時自己C++寫了足足200行才解決。后來19年元旦自學python拿起這道題重寫,寫了60行。為了回憶python 語法重新寫了一遍,結果寫完發現才三十行的樣子(都怪重裝系統忘記備份python文件,搞得現在都不知道當時咋寫的那么長)
題干大意已知2000年1月1日為星期六,按照日期計算并打印日歷(如圖)
def get_year_days(n): if n%4==0 and n%100!=0 or n%400==0 : return 366 else : return 365def get_month_days(n,m): if m == 1 or m == 3 or m == 5 or m == 7 or m == 8 or m == 10 or m == 12:return 31 if m == 4 or m == 6 or m == 9 or m == 11 : return 30 if m == 2: if n==365: return 28 else:return 29target_n = int(input('Please input year'))target_y = int(input('Please input month'))sum = 0for x in range(2000,target_n): print(x,get_year_days(x)) sum = sum + get_year_days(x)for x in range(1,target_y): print(x,get_month_days(get_year_days(target_n),x)) sum = sum + get_month_days(get_year_days(target_n),x)# print(sum)dx = (sum+6)%7if dx == 0: dx = 7print('一 二 三 四 五 六 日')for x in range(1,dx+1):print(' ',end = ' ')for x in range(1,get_month_days(get_year_days(target_y),target_y)): if x<=9 and x>=1 : print(x , end = ' ') else :print(x,end = ' ') if (x+dx)%7==0:print()語法易錯點整理輸入輸出格式
(四個月沒寫python 是真的忘得一干二凈,查怎么輸入輸出花了一會時間)
1、理解input ,它可以接受很多形式的輸入,如果在儲存時就想確定他的數據類型,就要用個括號兜起來然后前面寫上數據類型。
a = input(); #此時輸入的以不確定的形式儲存在了a中a = int(intput()); #此時輸入的東西自動以int數據類型儲存在了a中a = int(input('一句話')) #此時在輸出之前輸出了'一句話'
2、輸出格式
是print,不是println 也不是printf(受最近寫Java和打acm的習慣的影響)以為println可以換行,才發現print本身就可以換行。此外還有不換行的辦法,就是通過print的()中加上一個 end = ……,來改變輸出后的處理方式。
print(10) #輸出10print(a) #輸出aprint(a , end = ' ') #以空格來結束此次的輸出print(a, end = '任意東西') #以'任意東西'來做為結束此次的輸出for循環的range
range的遍歷是前開后不開(用區間來表示)
for x in range(1,5) : #此時會遍歷1 2 3 4,不會遍歷5
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方,望不吝賜教。
相關文章:
