- Learning Python for Forensics
- Preston Miller Chapin Bryce
- 364字
- 2021-08-20 10:17:02
Data type conversions
In some situations, the initial data type might not be the desired data type and needs to be changed while preserving its content. For example, when a user inputs arguments from the command line, they are commonly captured as strings and sometimes that user input needs to be, for example, an integer. We would need to use the integer class constructor to convert that string object before processing the data. Imagine we have a simple script that returns the square of a user-supplied integer; we would need to first convert the user input to an integer prior to squaring the input. One of the most common ways to convert data types is to wrap the variable or string with the constructor method, as shown here, for each of the data types:
>>> int('123456') # The string 123456
123456 # Is now the integer 123456
>>> str(45) # The integer 45
'45' # Is now the string 45
>>> float('37.5') # The string 37.5
37.5 # Is now the float 37.5
Invalid conversions, for example, converting the letter 'a' to an integer, will raise a ValueError. This error will state that the specified value cannot be converted to the desired type. In this case, we would want to use the built-in ord() method, which converts a character to its integer equivalent based on the ASCII value. In other scenarios, we may need to use other methods to convert between data types. The following is a table of common built-in data type conversion methods we can utilize for most scenarios:

We can also interchange the type or ordered collections found in our list, set, and tuple types. Since sets have requirements for what data may be inserted, we generally do not cast anything to a set. It is more common, instead, to case a set to a list so that we can access values by position:
>>> tuple_1 = (0, 1, 2, 3, 3)
>>> tuple_1
(0, 1, 2, 3, 3)
>>> set_1 = set(tuple_1)
>>> set_1
{0, 1, 2, 3}
>>> list_1 = list(tuple_1)
>>> list_1
[0, 1, 2, 3, 3]
>>> list_2 = list(set_1)
>>> list_2
[0, 1, 2, 3]
- 云原生安全:攻防實踐與體系構建
- unidbg逆向工程:原理與實踐
- 電子支付的規(guī)制結構配置研究
- 計算機病毒原理與防范(第2版)
- 安全技術運營:方法與實踐
- 工業(yè)物聯(lián)網(wǎng)安全
- 解密彩虹團隊非凡實戰(zhàn)能力:企業(yè)安全體系建設(共5冊)
- 網(wǎng)絡安全態(tài)勢感知
- 數(shù)據(jù)安全架構設計與實戰(zhàn)
- 網(wǎng)絡空間安全:拒絕服務攻擊檢測與防御
- Mastering Linux Security and Hardening
- 2010年中國互聯(lián)網(wǎng)網(wǎng)絡安全報告
- 計算機網(wǎng)絡安全與應用技術(第2版)
- 計算機病毒揭秘與對抗
- 網(wǎng)絡安全攻防技術實戰(zhàn)