日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網(wǎng)站首頁 Python教程 正文

python中對%、~含義的解釋_python

作者:MiaL ? 更新時間: 2022-07-15 Python教程

%有哪幾種含義?

查找手冊

翻看《The Python Libary Reference》python庫指南中附錄index部分(P1899):

% (percent):
datetime format, 198, 594, 596
environment variables expansion (Windows), 377, 1798
interpolation in configuration files, 493
operator, 31
printf-style formatting, 51, 65

根據(jù)index中用法索引逐項來看:

  • datetime format:表示日期格式
  • environment variables expansion 環(huán)境變量擴展
  • interpolation in configureation files 插入設置文件
  • operator:取余
  • printf-style formatting:輸出格式化

環(huán)境變量擴展:

Expands environment variable placeholders %NAME% in strings like REG_EXPAND_SZ:
? ? ExpandEnvironmentStrings('%windir%')
? ? 'C:\\Windows'

插入設置文件

  • home_dir: /Users
  • my_dir: %(home_dir)s/lumberjack
  • my_pictures: %(my_dir)s/Pictures

實例:

cls_info = ['%s\n(%d %s)'% (estimator_conf['name'],
? ? ? ? ? ? ? ? ? ? ? ? ? ? estimator_conf['complexity_computer'](estimator_conf['instance']),
? ? ? ? ? ? ? ? ? ? ? ? ? ? estimator_conf['complexity_label'])?
? ? ? ? ? ? ? ? ? ? ? ? ? ? for estimator_conf in configuration['estimators']]

~含義是什么?

查手冊:

~ (tilde)
home directory expansion, 377
operator, 32

除了表示家目錄外,表示操作符按位取反(the bits of inverted)

~5=-6
~-11=10

可以理解為取0為第一個正數(shù),取坐標軸對稱點。

解析見下 ↓↓↓↓↓↓↓

按位取反運算符

按位取反運算符~很少用到,今天看《byte of Python》書中舉例,這里學習一下,再復習一下計算機的基礎知識。

按位取反運算符,用來對一個二進制數(shù)按位取反,即將0變1,將1變0,按理說十進制的5(0000 0101)按位取反應該為(1111 1010)十進制250,但是在Python中運算結果并非如此,結果如下:

>>> ~-6
5

計算機中的符號數(shù)有三種表示方法,即原碼、反碼和補碼。三種表示方法均有符號位和數(shù)值位兩部分,符號位都是用0表示“正”,用1表示“負”,而數(shù)值位,三種表示方法各不相同。在計算機系統(tǒng)中,數(shù)值一律用補碼來表示和存儲。原因在于,使用補碼,可以將符號位和數(shù)值域統(tǒng)一處理;同時,加法和減法也可以統(tǒng)一處理。

  • 正整數(shù)的補碼是其二進制表示,與原碼相同 。
  • 負整數(shù)的補碼,將其對應正數(shù)二進制表示所有位取反(包括符號位,0變1,1變0)后加1。

Python按位取反運算:

>>> ~-6
5

運算分析:

-6的補碼是+6(0000 0110)取反后再+1,為(1111 1001)+(0000 0001)=(1111 1010),也就是計算機中-6是用(1111 1010)來存儲的,(1111 1010) 按位取反得到(0000 0101)這就是答案5

原文鏈接:https://blog.csdn.net/houhuipeng/article/details/90760911

欄目分類
最近更新