1. The theory of built-in methods of data types
- What are data types built-in
Built-in methods are functions that come with each data type
General class of data types:
1. Integer 2. Float 3. List 4. Character
5. Character 6. Boolean 7. Tuple 8. Set
The built-in methods of using data types uniformly use the period character (.)
'rain'.String built-in methods The variable name of the bind string.String built-in methods str.String built-in methods """ There are many built-in methods of data types. If we want to master it, we don’t need to memorize it by rote, and more often we rely on practice to make perfect. """
2. Built-in methods and operations of integer int
1. Type conversion
Type conversion is to convert other data into an integer
int (other data type)
Note: Only floating point type and string can be converted to integer type, floating point type can be converted directly, and the string must be pure numbers inside.
2. Binary conversion
Convert decimal to other bases print(bin(100)) #bin() converts decimal to binary 0b is the identity of binary 0b1100100 print(oct(100)) #oct() converts decimal to octal 0o is the identification of octal 0o144 print(hex(100)) #hex() converts decimal to hexadecimal 0x is the hexadecimal identifier 0x64 #If there is no preceding identifier, it defaults to decimal Convert other bases to decimal print(int(0b1100100)) print(int(0b1100100)) print(int(0b1100100)) or print(int("0b1100100", 2)) print(int("0o144", 8)) print(int("0x64", 16))
ps:python itself has low sensitivity to numbers (low precision), if you need accurate calculations, you need to use the module numpy....
3. Floating-point built-in methods and operations
1. Type conversion
float (other data types)
A decimal point can be allowed in the string, and the others must be pure numbers (python itself has low sensitivity to numbers (low precision), if you need accurate calculations, you need to use the module numpy....)
2. Special case for boolean values
print(folat(True)) # 1.0 print(folat(False)) # 0.0 print(int(True)) # 1 print(int(Flase)) # 0
When the converted value is a boolean value, the value corresponding to the boolean value is converted (True:1,False:0)
4. Built-in methods and operations of string float
1. Type conversion
str (other data types)
Can convert any data type (just add quotes around it)
2. The methods that must be mastered
1. Index value
s1 = 'hello word' print(s1[0]) # h print(s1[-1]) # d """ 1.Start from the starting position 0, and report an error directly beyond the range. 2.Negative numbers are supported, and the printed content is read from right to left """
2. Slicing operation
s1 = 'hello word' print(s1[1:5]) # The bones are cut from index 1 to index 4 regardless of the tail print(s1[-1:-5]) # Since the default order is from left to right, the implemented value cannot be printed print(s1[-5:-1]) # The default order is left to right worl
3. Modify the slice direction
s1 = 'hello world' print(s1[1:5:1]) # Default is 1 ello print(s1[1:5:2]) # Default is 1 el print(s1[-1:5:-1]) # Change direction from right to left dlrow print(s1[:]) # If you don't write a number, it is the default. print(s1[2:]) # That is, starting from index 2 and going forward print(s1[:5]) # Start at index 0 and go to 4 print(s1[::2]) # Take every other one starting at index 0
4. Count the number of strings
len:string length s1 = 'hello world' print(len(s1)) # 10
5. Remove the specified character from the first character of the string
strip:remove username = input('username>>>:').strip() if username == 'jason': print('Landed successfully') res = ' jason ' print(len(res)) # Since there are two spaces at the beginning and the end, the length of the string is 9 print(len(res.strip())) # Do not write in parentheses Remove leading and trailing spaces by default String length is 5 res1 = '$$jason$$' print(res1.strip('$')) # Remove the first and last jason by default print(res1.lstrip('$')) # Remove the left (leftstrip) that is the first jason$$ print(res1.rstrip('$')) # Remove the right aka trailing $$jason
6. Cut the specified characters in the string
split:cut res = 'jason|123|read' print(res.split('|')) # ['jason', '123', 'read'] The result of this method is a list name, pwd, hobby = res.split('|') print(res.split('|', maxsplit=1)) # ['jason', '123|read'] Cut the specified number from left to right maxsplit: the maximum number of cuts print(res.rsplit('|',maxsplit=1)) # ['jason|123', 'read'] Cut the specified number from right to left
7. String formatted output
format How to play 1:Equivalent to placeholder res = 'my name is {} my age is {}'.format('jason',123) print(res) # my name is jason my age is 123 format Play 2:The index takes the value and uses it repeatedly res = 'my name is {0} my age is {1} {0} {0} {1}'.format('jason',123) print(res) # my name is jason my age is 123 jason jason 123 format Play 3:placeholder name res = 'my name is {name1} my age is {age1} {name1} {age1} {name1} '.format(name1='jason', age1=123) print(res) format Play 4:Recommended Use name = input('username>>>:') age = input('age>>>:') res = f'my name is {name} my age is {age}' print(res) # my name is jason my age is 18
3. Methods that strings need to know
1. Case related
'''upper:convert to uppercase lower: convert to lowercase''' res = 'HeLlO wOrlD 123' print(res.upper()) # HELLO WORLD 123 print(res.lower()) # hello world 123 eg: '''Image verification code:Generate a verification code without unified capitalization and show it to the user Get the verification code entered by the user Convert the verification code entered by the user and the verification code originally generated to uppercase or lowercase and then compare ''' code = '8Ja6Cc' print('The image verification code displayed to the user', code) confirm_code = input('please enter verification code').strip() if confirm_code.upper() == code.upper(): print('The verification code is correct') res = 'hello world' print(res.isupper()) # Determines whether the string is pure uppercase False print(res.islower()) # Check if the string is pure lowercase True
2. Determine whether the string is a pure number
isdight:determine whether it is a number res = '' print(res.isdight()) guess_age = input('guess_age>>>:').strip if guess_age.isdight(): guess_age = int(guess_age) else: print('Age is a number!')
3. Replace the content specified in the string
replace:replace res = 'my name is jason jason jason' print(res.replace('jason', 'tony')) # my name is tony tony tony print(res.replace('jason', 'tony', 1)) # my name is tony jason jason replace the specified number of contents from left to right
4. String concatenation
l1 = 'hello' l2 = 'world' print(l1 + '$$' + l2) # hello$$world print(l1 * 3) # hellohellohello print('|'.join(['jason', '123', 'read', 'JDB'])) # jason|123|read|JDB print('|'.join(['jason', 123])) # Error The data value involved in splicing must be a string
5. Count the number of occurrences of the specified character
res = 'hello world' print(res.count('l')) # 3
6. Determine the beginning or end of a string
starswith:beginning endswith:end res = 'jason say hello' print(res.startswith('jason')) # True print(res.startswith('j')) # True print(res.startswith('jas')) # True print(res.startswith('a')) # False print(res.startswith('son')) # False print(res.startswith('say')) # False print(res.endswith('o')) # True print(res.endswith('llo')) # True print(res.endswith('hello')) # True
7. Other ways to supplement
res = 'helLO wORld hELlo worLD' print(res.title()) # Hello World Hello World Capitalize the first letter of each word print(res.capitalize()) # Hello world hello world capitalize the first letter of the first word in the string print(res.swapcase()) # HELlo WorLD HelLO WORld case conversion print(res.index('O')) # The meaning of the index, the disadvantage is that it will only find the first match from left to right print(res.find('O')) # 4 print(res.index('c')) # Can't find direct error print(res.find('c')) # cannot find default return -1 print(res.find('LO')) # 3
5. Built-in methods and operations of list list
1. Type conversion
list(other data types) ps:can be for The data type of the loop can be converted into a list print(list('hello')) print(list({'name': 'jason', 'pwd': 123})) print(list((1, 2, 3, 4))) print(list({1, 2, 3, 4, 5}))
2. Methods to be mastered
1. Index value
11 = [111, 222, 333, 444, 555, 666, 777, 888] print(l1[0]) # 111 print(l1[-1]) # 888 supports negative numbers
2. Slicing operation (consistent with string explanation operation)
l1 = [111, 222, 333, 444, 555, 666, 777, 888] print(l1[0:5]) # [111, 222, 333, 444, 555] Bone regardless of tail Cut from index 1 to index 4 print(l1[:]) # [111, 222, 333, 444, 555, 666, 777, 888] Use all numbers without writing them
3. Interval number and direction (consistent with the string explanation operation)
l1 = [111, 222, 333, 444, 555, 666, 777, 888] print(l1[::-1]) # [888, 777, 666, 555, 444, 333, 222, 111]
4. Count the number of data in the list
l1 = [111, 222, 333, 444, 555, 666, 777, 888] print(len(l1)) #8
5. Data value modification
l1 = [111, 222, 333, 444, 555, 666, 777, 888] l1[0] = 123 print(l1) # [123, 222, 333, 444, 555, 666, 777, 888]
6. Add data values to the list
Method 1: Append data value at the end
l1.append('cooked rice') print(l1) # [111, 222, 333, 444, 555, 666, 777, 888, 'dry rice'] l1.append(['jason', 'kevin', 'jerry']) print(l1) # [111, 222, 333, 444, 555, 666, 777, 888, ['jason', 'kevin', 'jerry']]
2. Method 2: Insert data value at any position
l1.insert(0, 'jason') print(l1) l1.insert(1, [11, 22, 33, 44]) print(l1) # [111, [11, 22, 33, 44], 222, 333, 444, 555, 666, 777, 888]
3. Method 3: Expand the list and merge the list
ll1 = [11, 22, 33] ll2 = [44, 55, 66] print(ll1 + ll2) # [11, 22, 33, 44, 55, 66] ll1.extend(ll2) # for loop + append print(ll1) # [11, 22, 33, 44, 55, 66] for i in ll2: ll1.append(i) print(ll1)
7. Delete list data
l1 = [111, 222, 333, 444, 555, 666, 777, 888] way 1:Generic delete keyword del del l1[0] print(l1) way 2:remove l1.remove(444) # Fill in data values in parentheses print(l1) way 3:pop l1.pop(3) # Fill in the index value in parentheses print(l1) l1.pop() # Default tail pop data value print(l1) res = l1.pop(3) print(res) # 444 res1 = l1.remove(444) print(res1) # None
8. Sort
ss = [54, 99, 55, 76, 12, 43, 76, 88, 99, 100, 33] ss.sort() # The default is ascending order print(ss) # [12, 33, 43, 54, 55, 76, 76, 88, 99, 99, 100] ss.sort(reverse=True) print(ss) # Change to descending order [12, 33, 43, 54, 55, 76, 76, 88, 99, 99, 100]
9. Count the number of occurrences of a value in a list
l1 = [111, 222, 333, 444, 555, 666, 777, 888] print(l1.count(111)) # 1
10. Reverse list order
l1 = [111, 222, 333, 444, 555, 666, 777, 888] l1.reverse() print(l1) # [888, 777, 666, 555, 444, 333, 222, 111]
6. Mutable and Immutable Types
s1 = '$$jason$$' l1 = [11, 22, 33] s1.strip('$') print(s1) # $$jason$$ '''The string does not modify itself after calling the built-in method, but produces a new result How to check whether there is a new result after calling a method? You can add variable names and assignment symbols to the left side of the code that calls the method res = s1.strip('$') ''' ret = l1.append(44) print(l1) # [11, 22, 33, 44] print(ret) # None '''The list modifies itself after calling the built-in method and does not produce a new result''' mutable type:The value changes, the memory address does not change l1 = [11, 22, 33] print(l1) print(id(l1)) l1.append(44) print(l1) print(id(l1)) immutable type:The value changes, the memory address must change res = '$$hello world$$' print(res) print(id(res)) res.strip('$') print(res) print(id(res))