தீர்க்கப்பட்டது: பைதான் தொடர் எண்களுக்கு இடையே உள்ள வேறுபாடு

பைதான் தொடர் எண்கள் வேறுபாட்டுடன் தொடர்புடைய முக்கிய சிக்கல் என்னவென்றால், இரண்டு தொடர்ச்சியான எண்களுக்கு இடையிலான வேறுபாடு எப்போதும் ஒரே மாதிரியாக இருக்காது. எடுத்துக்காட்டாக, உங்களிடம் எண்கள் [1, 2, 3] இருந்தால், 1 மற்றும் 2 க்கு இடையிலான வேறுபாடு 1 ஆகும், ஆனால் 2 மற்றும் 3 க்கு இடையிலான வேறுபாடு 0.5 மட்டுமே. மதிப்புகளில் உள்ள வேறுபாடுகளைக் கணக்கிட முயற்சிக்கும்போது அல்லது நிலையான படி அளவை நம்பியிருக்கும் அல்காரிதம்களைப் பயன்படுத்தும் போது இது குழப்பத்தை ஏற்படுத்தும்.

def consecutive_difference(nums): 
    diff = [] 
    for i in range(len(nums)-1): 
        diff.append(abs(nums[i] - nums[i+1])) 
    return diff 
  
# Driver code 
nums = [2, 4, 6, 8] 
print(consecutive_difference(nums))

# வரி 1: இந்த வரியானது, ஒரு வாதம், எண்களை எடுக்கும் தொடர்ச்சியான_வேறுபாடு எனப்படும் செயல்பாட்டை வரையறுக்கிறது.
# வரி 2: இந்த வரி diff எனப்படும் வெற்று பட்டியலை உருவாக்குகிறது.
# வரி 3: இந்த வரியானது ஒரு லூப் ஆகும், இது எண்கள் மைனஸ் ஒன்றின் நீளம் வழியாக திரும்பும்.
# வரி 4: இந்த வரியானது எண்களில் உள்ள ஒவ்வொரு உறுப்புக்கும் இடையிலான வேறுபாட்டின் முழுமையான மதிப்பை வேறுபாடு பட்டியலில் சேர்க்கிறது.
# வரி 5: இந்த வரியானது எண்களில் தொடர்ச்சியான உறுப்புகளுக்கு இடையே உள்ள அனைத்து வேறுபாடுகளுடன் நிரப்பப்பட்ட பிறகு வேறுபாடு பட்டியலை வழங்குகிறது.
# வரி 8: இந்த வரியானது 2, 4, 6, மற்றும் 8 ஆகியவற்றைக் கொண்ட பட்டியலுக்கு சமமான எண்கள் எனப்படும் மாறியை அமைக்கிறது.
# வரி 9: எண்களில் தொடர்ச்சியான_வேறுபாட்டை அழைப்பதன் முடிவை இந்த வரி அச்சிடுகிறது.

பைத்தானில் உள்ள பட்டியலில் தொடர்ச்சியான எண்களைக் கண்டறியவும்

பைத்தானில் உள்ள பட்டியலில் தொடர்ச்சியான எண்களைக் கண்டறிவது ஒப்பீட்டளவில் எளிதானது. மிகவும் நேரடியான அணுகுமுறை, பட்டியலைச் சுழற்றி, ஒவ்வொரு உறுப்பையும் அதற்கு முன் உள்ளவற்றுடன் ஒப்பிட்டுப் பார்ப்பதாகும். இரண்டு தனிமங்களுக்கு இடையிலான வேறுபாடு 1 எனில், அவை தொடர்ச்சியான எண்கள்.

இதை எப்படிச் செய்யலாம் என்பதற்கான உதாரணம் இங்கே:

எண்கள் = [1,2,3,4,5,6] # எண்களின் பட்டியல்
consecutive_numbers = [] # தொடர் எண்களை சேமிப்பதற்கான பட்டியல்
வரம்பில் உள்ள iக்கு(லென்(எண்கள்)-1): # லூப் த்ரூ லிஸ்ட்
என்றால் (எண்கள்[i+1] – எண்கள்[i]) == 1: # இரண்டு உறுப்புகளுக்கு இடையே உள்ள வேறுபாடு 1 ஆக உள்ளதா என சரிபார்க்கவும்
consecutive_numbers.append(numbers[i]) # தொடர் எண்களின் பட்டியலில் உறுப்பைச் சேர்க்கவும்
consecutive_numbers.append(numbers[i+1]) # தொடர் எண்களின் பட்டியலில் அடுத்த உறுப்பைச் சேர்க்கவும்
அச்சிட (தொடர்ச்சியான_எண்கள்) # தொடர்ச்சியான எண்களின் பட்டியலை அச்சிடுக

பட்டியலில் உள்ள தொடர் எண்களுக்கு இடையே உள்ள வித்தியாசத்தைப் பெறவும்

பைத்தானில், ஜிப்() செயல்பாட்டைப் பயன்படுத்தி பட்டியலில் உள்ள தொடர்ச்சியான எண்களுக்கு இடையிலான வித்தியாசத்தைப் பெறலாம். ஜிப்() செயல்பாடானது இரண்டு அல்லது அதற்கு மேற்பட்ட இட்டேரபிள்களை எடுத்து, டூப்பிள்களின் மறு செய்கையை வழங்குகிறது. கடந்துசெல்லக்கூடிய ஒவ்வொரு செயலியிலும் முதல் உருப்படி ஒன்றாக இணைக்கப்பட்டுள்ளது, பின்னர் ஒவ்வொரு கடந்துசெல்லக்கூடியவற்றிலும் இரண்டாவது உருப்படி ஒன்றாக இணைக்கப்பட்டுள்ளது, மற்றும் பல. பட்டியலில் உள்ள தொடர்ச்சியான எண்களுக்கு இடையிலான வித்தியாசத்தைப் பெற, ஒவ்வொரு எண்ணையும் அதன் முன்னோடியுடன் இணைக்க zip() ஐப் பயன்படுத்தலாம், பின்னர் வித்தியாசத்தைப் பெற அவற்றைக் கழிக்கலாம். உதாரணத்திற்கு:

பட்டியல்_எண்கள் = [1, 2, 3, 4]
வேறுபாடுகள் = [y – xக்கு x, ஜிப்பில் y(list_numbers[:-1], list_numbers[1:])]
அச்சு(வேறுபாடுகள்) # வெளியீடு: [1, 1, 1]

தொடர்புடைய இடுகைகள்:

ஒரு கருத்துரையை