1. 程式人生 > 其它 >spring的學習日記-spring-IOC的理解-的入門-Hello World-拓展注入:C(構造器注入)注入和 P(無參構造)注入

spring的學習日記-spring-IOC的理解-的入門-Hello World-拓展注入:C(構造器注入)注入和 P(無參構造)注入

Python迴圈

while+else

# while與else連用
    當while沒有被關鍵字break主動結束的情況下 
    正常結束迴圈體程式碼之後會執行else的子程式碼
    """
    while 條件:
        迴圈體程式碼
    else:
        迴圈體程式碼正常執行結束 則會執行該子程式碼塊
    """


死迴圈與while的巢狀

  # 死迴圈有些時候會極度的影響電腦的效能 甚至會造成硬體的損壞
    死迴圈就是永遠無法結束的迴圈並且一致佔用CPU工作
        count = 10
        while True:
            count *= 1

  # while巢狀
    flag = True
    while flag:
        username = input('username>>>:')
        password = input('password>>>:')
        if username == 'wql' and password == '123':
            print('登入成功')
            while flag:
                cmd = input('請輸入您的指令>>>:')
                if cmd == 'q':
                    print('下次光臨')
                    flag = False
                print('正在執行您的指令:%s' % cmd)
        else:
            print("使用者名稱或密碼錯誤")

for迴圈

  """for迴圈可以做到的事情while迴圈都可以做到!!! 但是for迴圈語法更加簡單 使用頻率更高"""
  一般情況下涉及到迴圈取值的時候 都會考慮使用for迴圈而不是while迴圈
  """
  語法結構
      for 變數名 in for迴圈物件:  # 字串、列表、字典、元組、集合
        for迴圈的迴圈體程式碼
      每次執行都會將迴圈物件中的一個元素賦值給變數名

  # ps:針對for迴圈語法結構中的變數名 也應該做到見名知意
       如果真的沒有合適的名字可以使用常用的變數名i、j、k、v、num、item...
"""
# for+break
	break結束本層for迴圈
# for+continue
	continue結束本次for迴圈 直接開始下一次
# for+else
	for迴圈正常結束之後執行else子程式碼
"""與while一致"""

#name_list = ['lamb', 'kevin', 'tony', 'tank', 'oscar']
   使用while迴圈依次打印出列表中所有的元素
   count = 0
   while count < 5:
       print(name_list[count])
       count += 1
   使用for迴圈依次打印出列表中所有的元素
   for name in name_list:
       print(name)
  # 迴圈字串:依次取出每一個字元
     for i in 'hello world':
         print(i)

  # 迴圈字典(特殊):迴圈字典只能獲取到字典的key value無法直接獲取
     userinfo_dict = {'username': "jason", 'age': 18, 'gender': 'male'}
     for i in userinfo_dict:
         print(i)

  # 迴圈元組
     for i in (11, 22, 33, 44, 55):
         print(i)
  # 迴圈集合:字典與集合內部的元素都是無序的 
    for i in {11, 22, 33, 44, 55, 66}:
        print(i)

range關鍵字

  # range方法在python2和python3中有所區分
    在python2中range是直接產生一個列表 元素很多的情況下比較佔用空間
    在python2中有一個xrange 其實就是python3裡面的range
    在python3中range相當於哆啦A夢的口袋 不佔空間但是可以取出很多資料
    在python3中就只有一個range了

# 迴圈列印0-100
  while迴圈
  count = 0
  while count < 101:
    print(count)
    count += 1
# for迴圈
 for i in range(101):  # 從0開始到100結束的資料集 顧頭不顧尾(101不列印)
     print(i)
"""range其實一個迭代器(後面講) 用於產生一個數據集合 但是節省空間"""
# 用法1  括號內只寫一個數字  預設從0開始  顧頭不顧尾
 for i in range(10):
     print(i)
# 用法2  括號內寫兩個數字  自定義起始位置 顧頭不顧尾
 for i in range(1, 10):
     print(i)
# 用法3  括號內寫三個數字  第三個數字表示的是等差數列的差值  預設情況下是1
 for i in range(1, 10, 2):
     print(i)

# url_demo = 'https://movie.douban.com/top250?start=%s&filter='
   for i in range(0, 250, 25):
       real_url = url_demo % i
    # 通過程式碼請求頁面獲取頁面資料
    # 然後根據業務需求篩選出特定的內容

檢視資料型別的內建方法 藉助於程式設計軟體的自動提示 採用句點符快速檢視

資料型別的內建方法

int整型
    1.型別轉換
    2.進位制數轉換
# 型別轉換
   res = int('123')  # 將int方法執行之後的結果賦值給變數res
   print(res, type(res))  # int
   int('11.11')
   int('abc')
"""int方法只能轉換純數字的字串"""
# 將十進位制轉換成其他機制
   print(bin(100))  # 0b1100100    二進位制(0b開頭)
   print(oct(100))  # 0o144        八進位制(0o開頭)
   print(hex(100))  # 0x64         十六機制(0x開頭)
   將其他機制轉換成十進位制
  print(int('0b1100100', 2))
  print(int('0o144', 8))
  print(int('0x64', 16))

float浮點型
1.型別轉換
    res = float('11.11')
    print(res, type(res))  # 11.11
    res = float('11')
    print(res, type(res))  # 11.0
    float('abc')

字串內建方法

  1.型別轉換
  str可以轉換所有基本資料型別
      print(str(11), type(str(11)))

      print(str(11.11), type(str(11.11)))

      print(str([1, 2, 3, 4]), type(str([1, 2, 3, 4])))

      print(str({'name': 'jason'}), type(str({'name': 'jason'})))

      print(str((1, 2, 3, 4)), type(str((1, 2, 3, 4))))

      print(str({1, 2, 3, 4}), type(str({1, 2, 3, 4})))

      print(str(True), type(str(True)))
s1 = 'hello world'
# 1.索引取值
   print(s1[0])
# 2.切片操作
   print(s1[2:4])  # 顧頭不顧尾
# 3.步長
   print(s1[2:9:1])  # 第三個引數是步長 預設是1 依次獲取
   print(s1[2:9:2])  # 間隔一個取一個
# 索引取切片擴充套件
   print(s1[-1])  # 獲取最好一個字元
   print(s1[-1:-5:-1])  # dlro  第三個引數還可以控制索引的方向
   print(s1[-5:-1])  # worl
# 4.統計字串中字元的個數
   print(len(s1))  # 11
# 5.成員運算
   print('ll' in s1)
# 6.移除字串首位指定的字元(使用頻率較高)
   name = '  jason  '
   print(len(name))
   res = name.strip()  # 預設移除字串首尾的空格
   print(res, len(res))

   name1 = '$$$$jas$on$$$$'
   print(name1.strip('$'))
   username = input('username>>>>:').strip()
   if username == 'jason':
       print('我想去幹飯了!!!')
# 7.按照指定的字元切割字串
data = 'jason|123|DBJ'
   print(data.split('|'))  # ['jason', '123', 'DBJ']
   name, pwd, hobby = data.split('|')  # 解壓賦值
print(data.split('|', maxsplit=1))  # ['jason', '123|DBJ']
print(data.rsplit('|', maxsplit=1))  # ['jason|123', 'DBJ']
"""split方法切割完字串之後是一個列表"""