日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

【Python之路】第五篇--Python基础之杂货铺

發布時間:2025/4/14 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Python之路】第五篇--Python基础之杂货铺 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

字符串格式化

  Python的字符串格式化有兩種方式:?百分號方式、format方式

  百分號的方式相對來說比較老,而format方式則是比較先進的方式,企圖替換古老的方式,目前兩者并存。

1、百分號方式

%[(name)][flags][width].[precision]typecode

  • (name) ? ? ?【可選】,用于選擇指定的key

  • flags ? ? ? ? 【可選】,可供選擇的值有:width 可選,占有寬度

    • + ? ? 右對齊;正數前加正好,負數前加負號;

    • - ? ? ?左對齊;正數前無符號,負數前加負號;

    • 空格 ?右對齊;正數前加空格,負數前加負號;

    • 0 ? ? ?右對齊;正數前無符號,負數前加負號;用0填充空白處

  • .precision 【可選】,小數點后保留的位數

  • typecode ?【必選】

    • s,獲取傳入對象的__str__方法的返回值,并將其格式化到指定位置

    • r,獲取傳入對象的__repr__方法的返回值,并將其格式化到指定位置

    • c,整數:將數字轉換成其unicode對應的值,10進制范圍為 0 <= i <= 1114111(py27則只支持0-255);字符:將字符添加到指定位置

    • o,將整數轉換成 八 進制表示,并將其格式化到指定位置

    • x,將整數轉換成十六進制表示,并將其格式化到指定位置

    • d,將整數、浮點數轉換成 十 進制表示,并將其格式化到指定位置

    • e,將整數、浮點數轉換成科學計數法,并將其格式化到指定位置(小寫e)

    • E,將整數、浮點數轉換成科學計數法,并將其格式化到指定位置(大寫E)

    • f, 將整數、浮點數轉換成浮點數表示,并將其格式化到指定位置(默認保留小數點后6位)

    • F,同上

    • g,自動調整將整數、浮點數轉換成 浮點型或科學計數法表示(超過6位數用科學計數法),并將其格式化到指定位置(如果是科學計數則是e;)

    • G,自動調整將整數、浮點數轉換成 浮點型或科學計數法表示(超過6位數用科學計數法),并將其格式化到指定位置(如果是科學計數則是E;)

    • %,當字符串中存在格式化標志時,需要用 %%表示一個百分號

注:Python中百分號格式化是不存在自動將整數轉換成二進制表示的方式

常用格式化:

tpl = "i am %s" % "alex"tpl = "i am %s age %d" % ("alex", 18)tpl = "i am %(name)s age %(age)d" % {"name": "alex", "age": 18}tpl = "percent %.2f" % 99.97623tpl = "i am %(pp).2f" % {"pp": 123.425556, }tpl = "i am %.2f %%" % {"pp": 123.425556, }

2、Format方式

[[fill]align][sign][#][0][width][,][.precision][type]

  • ?fill ? 【可選】空白處填充的字符

  • align 【可選】對齊方式(需配合width使用)

    • <, 內容左對齊

    • >, 內容右對齊(默認)

    • =, 內容右對齊,將符號放置在填充字符的左側,且只對數字類型有效。 即使:符號+填充物+數字

    • ^, 內容居中

  • sign 【可選】有無符號數字

    • + ? ? ?正號加正,負號加負;

    • - ? ? ? 正號不變,負號加負;

    • 空格 ?正號空格,負號加負;

  • #    ? ? ?【可選】對于二進制、八進制、十六進制,如果加上#,會顯示 0b/0o/0x,否則不顯示
  • , ? ? ? ? ? ?【可選】為數字添加分隔符,如:1,000,000

  • width ? ? ? 【可選】格式化位所占寬度

  • .precision 【可選】小數位保留精度

  • type ? ? ? ? 【可選】格式化類型

    • 傳入” 字符串類型 “的參數
      • s,格式化字符串類型數據

      • 空白,未指定類型,則默認是None,同s

    • 傳入“ 整數類型 ”的參數
      • b,將10進制整數自動轉換成2進制表示然后格式化

      • c,將10進制整數自動轉換為其對應的unicode字符

      • d,十進制整數

      • o,將10進制整數自動轉換成8進制表示然后格式化;

      • x,將10進制整數自動轉換成16進制表示然后格式化(小寫x)

      • X,將10進制整數自動轉換成16進制表示然后格式化(大寫X)

    • 傳入“ 浮點型或小數類型 ”的參數
      • e, 轉換為科學計數法(小寫e)表示,然后格式化;

      • E, 轉換為科學計數法(大寫E)表示,然后格式化;

      • f , 轉換為浮點型(默認小數點后保留6位)表示,然后格式化;

      • F, 轉換為浮點型(默認小數點后保留6位)表示,然后格式化;

      • g, 自動在e和f中切換

      • G, 自動在E和F中切換

      • %,顯示百分比(默認顯示小數點后6位)

?常用格式化:

tpl = "i am {}, age {}, {}".format("seven", 18, 'alex')tpl = "i am {}, age {}, {}".format(*["seven", 18, 'alex'])tpl = "i am {0}, age {1}, really {0}".format("seven", 18)tpl = "i am {0}, age {1}, really {0}".format(*["seven", 18])tpl = "i am {name}, age {age}, really {name}".format(name="seven", age=18)tpl = "i am {name}, age {age}, really {name}".format(**{"name": "seven", "age": 18})tpl = "i am {0[0]}, age {0[1]}, really {0[2]}".format([1, 2, 3], [11, 22, 33])tpl = "i am {:s}, age {:d}, money {:f}".format("seven", 18, 88888.1)tpl = "i am {:s}, age {:d}".format(*["seven", 18])tpl = "i am {name:s}, age {age:d}".format(name="seven", age=18)tpl = "i am {name:s}, age {age:d}".format(**{"name": "seven", "age": 18})tpl = "numbers: {:b},{:o},{:d},{:x},{:X}, {:%}".format(15, 15, 15, 15, 15, 15.87623, 2)tpl = "numbers: {:b},{:o},{:d},{:x},{:X}, {:%}".format(15, 15, 15, 15, 15, 15.87623, 2)tpl = "numbers: {0:b},{0:o},{0:d},{0:x},{0:X}, {0:%}".format(15)tpl = "numbers: {num:b},{num:o},{num:d},{num:x},{num:X}, {num:%}".format(num=15)

知識補充

1.__doc__  

? ? ? 相對于單行注釋,多行注釋而言,這是對.py文件注釋的一種方法 !

  在文件開頭處 用3個引號 括住內容

#!/usr/bin/env python # -*-coding:utf-8 -*-"""我是注釋......... """print(__doc__)# 我是注釋.........

2.__file__

  獲取當前文件路徑

print(__file__)# F:/PycharmProjects/Python/W4/Day12/lib/index.py******************************p1 = os.path.dirname(__file__) p2 = 'lib' my_dir = os.path.join(p1,p2) sys.path.append(my_dir)

3.__package__

  當前文件返回: None

  導入的其他文件: 指定文件所在包 ,用 . 劃分

# *************************** lib -> common -> index.py# *************************** s1.pyfrom lib.common import index print(index.__package__)#lib.common

4.__cached__   緩存

5.__name__

  如果執行當前的 .py文件, name=main , 如果通過導入py文件,他們的name=他們名字

from lib.common import indexprint(__name__) print(index.__name__)# __main__ # lib.common.index

  調用主函數前,先加 if __name__ == '__main__'

# index.pydef f1():print('hello!')if __name__ == '__main__':f1()# 執行index.py 輸出hello!******************************** # index2.pyimport index# 執行index2.py 沒有輸出內容

6.__loader__

7.__builtins__  內置函數在這里面

8.__spec__

第三方模塊的安裝

1.軟件管理工具

  pip3

    1.依賴,先安裝 setuptools

    2.pip3 添加到環境變量

    3. pip3 install requests

2.源碼安裝

  1.下載代碼,安裝

  2.進入文件后, python setup.py install

?

迭代器和生成器

1、迭代器

迭代器是訪問集合元素的一種方式。迭代器對象從集合的第一個元素開始訪問,直到所有的元素被訪問完結束。迭代器只能往前不會后退,不過這也沒什么,因為人們很少在迭代途中往后退。另外,迭代器的一大優點是不要求事先準備好整個迭代過程中所有的元素。迭代器僅僅在迭代到某個元素時才計算該元素,而在這之前或之后,元素可以不存在或者被銷毀。這個特點使得它特別適合用于遍歷一些巨大的或是無限的集合,比如幾個G的文件

特點:

  • 訪問者不需要關心迭代器內部的結構,僅需通過next()方法不斷去取下一個內容
  • 不能隨機訪問集合中的某個值 ,只能從頭到尾依次訪問
  • 訪問到一半時不能往回退
  • 便于循環比較大的數據集合,節省內存
  • >>> a = iter([1,2,3,4,5]) >>> a <list_iterator object at 0x101402630> >>> a.__next__() 1 >>> a.__next__() 2 >>> a.__next__() 3 >>> a.__next__() 4 >>> a.__next__() 5 >>> a.__next__() Traceback (most recent call last):File "<stdin>", line 1, in <module> StopIteration

    2、生成器

    一個函數調用時返回一個迭代器,那這個函數就叫做生成器(generator);如果函數中包含yield語法,那這個函數就會變成生成器;

    def func():print(11)yield 1print(22)yield 2print(33)yield 3temp = func()  # 得到生成器,此時不執行ret = temp .__next__() # 執行上一個yield和 下一個yield中間的代碼 print(ret)ret = temp .__next__() print(ret)

    3、實例

    a、利用生成器自定義range

    def nrange(num):temp = -1while True:temp = temp + 1if temp >= num:returnelse:yield temp

    b、利用迭代器訪問range

    for i in nrange(10):print(i)

    ?

      

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    轉載于:https://www.cnblogs.com/5poi/p/6104229.html

    總結

    以上是生活随笔為你收集整理的【Python之路】第五篇--Python基础之杂货铺的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 欧美精品人妻一区二区 | 天天干天天舔 | 韩日精品在线 | 丁香综合 | 伦理片一区二区 | 日韩中文在线视频 | 久久依人网 | 中国亚洲老头同性gay男男… | 涩涩网站在线观看 | av免费资源| 久久久精品区 | 欧美日韩在线视频播放 | 国产精品色片 | 日本大尺度做爰呻吟 | 亚洲无人区小视频 | 国产精品丝袜一区二区 | 婷婷资源网 | 尤物视频网站在线观看 | 国产精品一区二区三区免费 | 日韩和欧美的一区二区 | 潘金莲一级淫片aaaaa武则天 | 亚洲69 | 97国产精品久久 | 欧美做爰爽爽爽爽爽爽 | 无码人妻一区二区三区一 | 日本黄色美女视频 | 少妇做爰免费视看片 | 日韩另类在线 | 夜夜草影院 | 国产77777 | 国产在线观看www | 天堂在线观看av | 少妇精品久久久久久久久久 | 国产成人免费在线观看 | 日韩啪啪网 | 女儿的朋友4在线观看 | 在线爱情大片免费观看大全 | 天天干夜夜操视频 | 欧美一区二区三区成人久久片 | 99视频在线看 | 无码精品黑人一区二区三区 | 亚洲熟妇色自偷自拍另类 | 91 免费看片| 尤物视频官网 | 国产女人18毛片水真多1 | 性爽爽| 天天狠天天插天天透 | 一本色道久久88综合无码 | www.第四色 | 香蕉综合网 | 原来神马电影免费高清完整版动漫 | 国产18p| 亚洲综合精品国产一区二区三区 | 一级片小视频 | 丁香花电影在线观看免费高清 | 国产高清99 | 国产a视频精品免费观看 | 美女操出白浆 | 国产人成在线观看 | 成人深夜视频 | 欧美毛片在线观看 | 亚洲图片一区二区三区 | 日本欧美激情 | 99在线精品视频 | 国产一区免费在线观看 | 一区二区三区视频在线观看 | 激情一级片 | 电家庭影院午夜 | 尤物在线观看视频 | 国产人成无码视频在线观看 | 国产人妻精品午夜福利免费 | 亚洲小说区图片区 | 欧美激情一区二区三级高清视频 | 中出视频在线观看 | 色综合天天操 | www视频免费观看 | 四虎影视免费永久大全 | 欧美com| 色欧美88888久久久久久影院 | 天堂免费av | 欧美69久成人做爰视频 | 日韩精品电影在线观看 | av色欲无码人妻中文字幕 | 激情久久综合 | 理论av| 99国产在线 | 自拍偷拍激情视频 | 欧美综合自拍 | 亚洲av无码专区国产乱码不卡 | 看国产毛片| 国产精品理论片在线观看 | 欧美一级网站 | 亚洲乱码精品久久久久.. | 男人天堂色 | 波多野42部无码喷潮在线 | 涩久久| 欧美一级黄色网 | 999精品一区 | 国产午夜视频在线观看 |