Lawrence  Lesch

Lawrence Lesch

1674110900

Pico: Take Browser Screenshots in Javascript

Pico

Take browser screenshots in Javascript

Goal

Pico's goal is to produce high precision screenshots of any viewport entirely client side. This is different from simply capturing a webpage using Puppeteer or a similar tool in that the screenshot taking happens entirely client side.

The viewport screenshots include scrolled element scroll states, cross-origin images, input states, web fonts, canvas contents, current video frame contents, and much more information that you wouldn't be able to get using something like a headless browser.

At the time of writing there are no existing solutions that are aimed of reproducing the entire viewport accurately like Pico.

How it works

Warning: nerdy

This program renders whatever is displayed in the given Window into an image, thanks to svg's <foreignObject>.

No server side code is required to produce the screenshot.

There is no native Javascript API to take the screenshot of what the user is currently seeing on their screen (and because of security issues there probably will never be one).

Since we don't have access to the raw data that's being shown to the user we have to reconstruct it manually. This program works thanks to svg's <foreignObject> which lets you insert any valid HTML content inside, which we can then pass as a data URL into a <canvas>' drawImage and read out the raw image data with canvas.toBlob or canvas.toDataURL.

The above alone would work great in a universe where subresources didn't exist - which as you know is not our universe. SVG's inserted into <img> tags (or in our case, <canvas>') cannot display any external resources, whether it's images, fonts or stylesheets.

To work around that fact Pico does the following things:

  • Downloads and inlines contents of all <img> tags as data URL's in their src attributes
  • Downloads external stylesheets and inlines them as <style> tags
  • Checks all stylesheets for nested resources
    • Downloads and checks nested stylesheets in @import rules
    • Downloads any resources referenced by the url() function, including but not exclusive to the following properties:
      • backgrounds
      • background-images
      • src in @font-face rule
      • cursor
      • content

In addition, Pico also:

  • Copies input states (text inputs, checkboxes, textareas) into value attributes so that they can be shown in SVG
  • Emulates current scroll positions on all scrolled elements (including the root <html> element) via either transform: translate (for root node) and absolute positioning of children of scrolled nodes
  • Transforms existing <canvas> elements into <img> tags with the contents of the <canvas>' inlined as data URL's in src
  • Performs various minor fixes for rem font size, working media queries, preserving size of everything, etc.

The returned DOM is inserted into an <iframe>, serialized into XML, converted into a data URL, put into an Image, which is then rendered onto a <canvas> whose contents are read out with canvas.toBlob and finally returned to the program's caller, together with all the errors when resources failed to load.

Pico is able to safely accumulate all async resource errors thanks to Fluture, which is a really great alternative to the native Promise and forces you to write type safe errors. You can read a fantastic introductory article to it by the library's author here.

API

Pico is built using Fluture and in addition to the Promise also provides a direct API to Fluture via functions suffixed with Fluture. If you don't care about functional programming just use the non-suffixed functions to work with Promise's instead.

All functions return an "ErrorStack", which is basically just the returned value paired with any errors that happened while computing it. Most errors will be CORS or 404 related issues when loading subresources.

Types

declare type ErrorStack<T> = {
    errors: DetailedError[];
    value: T;
};
export declare type DetailedError = {
    // Human readable string of why the error happened
    reason: string;

    // Proper error object
    error: Error;
};
export declare type Options = {
    // An array of selectors to nodes that should not be included in the output.
    ignore: string[];
};

Functions

declare const objectURL: ($window: Window, partialOptions?: Partial<Options>) => Promise<ErrorStack<string>>;
declare const objectURLFluture: ($window: Window, options: Options) => Fluture<DetailedError, ErrorStack<string>>;

Render the given Window to a PNG image and return it as an object URL. This is safer to use than dataURL due to memory constraints. Remember to call URL.revokeObjectURL when you're done with the image.


declare const dataURL: ($window: Window, partialOptions?: Partial<Options>) => Promise<ErrorStack<string>>;
declare const dataURLFluture: ($window: Window, options: Options) => Fluture<DetailedError, ErrorStack<string>>;

Render the given Window to a PNG image and return it as a data url. Note that in Chrome the limit for data url's is 2MB, prefer objectURL when possible.


declare const svgObjectURL: ($window: Window, partialOptions?: Partial<Options>) => Promise<ErrorStack<string>>;
declare const svgObjectURLFluture: ($window: Window, options: Options) => Fluture<DetailedError, ErrorStack<string>>;

Render the given Window to an SVG image and return it as an object URL. This function is mainly useful for inspecting the output of Pico using devtools, for real uses prefer the other functions.

Installation

$ npm install @gripeless/pico

The module is intended to be used exclusively in the browser via a code bundler like Rollup or Webpack. There is no single file bundle build provided at this time.

Contributing

See contributing.md.

Caveats

Pico is being developed against recent Firefox and Blink based browsers (Chrome, Opera, Brave, Edge). It does not work on Safari or old Edge versions due to lack of proper support for <foreignObject>.

Prior art

Pico's code was inspired in many ways by the following libraries:

Pico's selling point is representing the whole viewport as accurately as possible. If you want to render a single DOM node instead, consider using one of the above libraries.

To the authors of the above code, thank you for your awesome work.

(Original page on the left · PNG output on the right)

Download Details:

Author: rsify
Source Code: https://github.com/rsify/pico 
License: MIT license

#typescript #javascript #take #browser 

What is GEEK

Buddha Community

Pico: Take Browser Screenshots in Javascript

How to Bash Read Command

Bash has no built-in function to take the user’s input from the terminal. The read command of Bash is used to take the user’s input from the terminal. This command has different options to take an input from the user in different ways. Multiple inputs can be taken using the single read command. Different ways of using this command in the Bash script are described in this tutorial.

Syntax

read [options] [var1, var2, var3…]

The read command can be used without any argument or option. Many types of options can be used with this command to take the input of the particular data type. It can take more input from the user by defining the multiple variables with this command.

Some Useful Options of the Read Command

Some options of the read command require an additional parameter to use. The most commonly used options of the read command are mentioned in the following:

OptionPurpose
-d <delimiter>It is used to take the input until the delimiter value is provided.
-n <number>It is used to take the input of a particular number of characters from the terminal and stop taking the input earlier based on the delimiter.
-N <number>It is used to take the input of the particular number of characters from the terminal, ignoring the delimiter.
-p <prompt>It is used to print the output of the prompt message before taking the input.
-sIt is used to take the input without an echo. This option is mainly used to take the input for the password input.
-aIt is used to take the input for the indexed array.
-t <time>It is used to set a time limit for taking the input.
-u <file descriptor>It is used to take the input from the file.
-rIt is used to disable the backslashes.

 

Different Examples of the Read Command

The uses of read command with different options are shown in this part of this tutorial.

Example 1: Using Read Command without Any Option and variable

Create a Bash file with the following script that takes the input from the terminal using the read command without any option and variable. If no variable is used with the read command, the input value is stored in the $REPLY variable. The value of this variable is printed later after taking the input.

#!/bin/bash  
#Print the prompt message
echo "Enter your favorite color: "  
#Take the input
read  
#Print the input value
echo "Your favorite color is $REPLY"

Output:

The following output appears if the “Blue” value is taken as an input:

Example 2: Using Read Command with a Variable

Create a Bash file with the following script that takes the input from the terminal using the read command with a variable. The method of taking the single or multiple variables using a read command is shown in this example. The values of all variables are printed later.

#!/bin/bash  
#Print the prompt message
echo "Enter the product name: "  
#Take the input with a single variable
read item

#Print the prompt message
echo "Enter the color variations of the product: "  
#Take three input values in three variables
read color1 color2 color3

#Print the input value
echo "The product name is $item."  
#Print the input values
echo "Available colors are $color1, $color2, and $color3."

Output:

The following output appears after taking a single input first and three inputs later:

Example 3: Using Read Command with -p Option

Create a Bash file with the following script that takes the input from the terminal using the read command with a variable and the -p option. The input value is printed later.

#!/bin/bash  
#Take the input with the prompt message
read -p "Enter the book name: " book
#Print the input value
echo "Book name: $book"

Output:

The following output appears after taking the input:

Example 4: Using Read Command with -s Option

Create a Bash file with the following script that takes the input from the terminal using the read command with a variable and the -s option. The input value of the password will not be displayed for the -s option. The input values are checked later for authentication. A success or failure message is also printed.

#!/bin/bash  
#Take the input with the prompt message
read -p "Enter your email: " email
#Take the secret input with the prompt message
read -sp "Enter your password: " password

#Add newline
echo ""

#Check the email and password for authentication
if [[ $email == "admin@example.com" && $password == "secret" ]]
then
   #Print the success message
   echo "Authenticated."
else
   #Print the failure message
   echo "Not authenticated."
fi

Output:

The following output appears after taking the valid and invalid input values:

Example 5: Using Read Command with -a Option

Create a Bash file with the following script that takes the input from the terminal using the read command with a variable and the -a option. The array values are printed later after taking the input values from the terminal.

#!/bin/bash  
echo "Enter the country names: "  
#Take multiple inputs using an array  
read -a countries

echo "Country names are:"
#Read the array values
for country in ${countries[@]}
do
    echo $country
done

Output:

The following output appears after taking the array values:

Example 6: Using Read Command with -n Option

Create a Bash file with the following script that takes the input from the terminal using the read command with a variable and the -n option.

#!/bin/bash  
#Print the prompt message
echo "Enter the product code: "  
#Take the input of five characters
read -n 5 code
#Add newline
echo ""
#Print the input value
echo "The product code is $code"

Output:

The following output appears if the “78342” value is taken as input:

Example 7: Using Read Command with -t Option

Create a Bash file with the following script that takes the input from the terminal using the read command with a variable and the -t option.

#!/bin/bash  
#Print the prompt message
echo -n "Write the result of 10-6: "  
#Take the input of five characters
read -t 3 answer

#Check the input value
if [[ $answer == "4" ]]
then
   echo "Correct answer."
else
   echo "Incorrect answer."
fi

Output:

The following output appears after taking the correct and incorrect input values:

Conclusion

The uses of some useful options of the read command are explained in this tutorial using multiple examples to know the basic uses of the read command.

Original article source at: https://linuxhint.com/

#bash #command 

Recherche linéaire en Python

Dans cet article Python, vous apprendrez ce qui suit :

  • Qu'est-ce qu'une recherche linéaire ?
  • Algorithme de recherche linéaire
  • Écrire un programme Python pour la recherche linéaire à l'aide de la boucle While
  • Écrire un programme Python pour la recherche linéaire à l'aide de la boucle For
  • Recherche linéaire dans le programme Python à l'aide de la récursion

Qu'est-ce qu'une recherche linéaire ?

Tout d'abord, une recherche linéaire, également appelée recherche séquentielle, cette méthode est utilisée pour rechercher un élément dans une liste ou un tableau. Il vérifie chaque élément de la liste un par un / séquentiellement jusqu'à ce qu'une correspondance soit trouvée ou que toute la liste ait été recherchée.

Algorithme de recherche linéaire

Implémentez la recherche linéaire en suivant les étapes ci-dessous :

  • Parcourez la liste/le tableau à l'aide d'une boucle.
  • À chaque itération, associez la  target valeur à la valeur donnée de la liste/du tableau.
    • Si les valeurs correspondent, renvoie l'index actuel de la liste/du tableau.
    • Sinon, passez à l'élément de tableau/liste suivant.
  • Si aucune correspondance n'est trouvée, retournez  -1.

Écrire un programme Python pour la recherche linéaire à l'aide de la boucle While

# python program for linear search using while loop

#define list
lst = []

#take input list size
num = int(input("Enter size of list :- "))

for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)

#take input number to be find in list   
x = int(input("Enter number to search in list :- "))

i = 0
flag = False

while i < len(lst):
	if lst[i] == x:
		flag = True
		break

	i = i + 1

if flag == 1:
	print('{} was found at index {}.'.format(x, i))
else:
	print('{} was not found.'.format(x))

Après l'exécution du programme, la sortie sera :

Enter size of list :-  5
Enter the array of 0 element :-  10
Enter the array of 1 element :-  23
Enter the array of 2 element :-  56
Enter the array of 3 element :-  89
Enter the array of 4 element :-  200
Enter number to search in list :-  89
89 was found at index 3.

Écrire un programme Python pour la recherche linéaire à l'aide de la boucle For

# python program for linear search using for loop

#define list
lst = []

#take input list size
num = int(input("Enter size of list :- "))

for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)

#take input number to be find in list   
x = int(input("Enter number to search in list :- "))

i = 0
flag = False

for i in range(len(lst)):
    if lst[i] == x:
        flag = True
        break

if flag == 1:
	print('{} was found at index {}.'.format(x, i))
else:
	print('{} was not found.'.format(x))

Après l'exécution du programme, la sortie sera :

Enter size of list :-  6
Enter the array of 0 element :-  25
Enter the array of 1 element :-  50
Enter the array of 2 element :-  100
Enter the array of 3 element :-  200
Enter the array of 4 element :-  250
Enter the array of 5 element :-  650
Enter number to search in list :-  200
200 was found at index 3.

Recherche linéaire dans le programme Python à l'aide de la récursion

# python program for linear search using for loop

#define list
lst = []

#take input list size
num = int(input("Enter size of list :- "))

for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)

#take input number to be find in list   
x = int(input("Enter number to search in list :- "))

# Recursive function to linear search x in arr[l..r]  
def recLinearSearch( arr, l, r, x): 
    if r < l: 
        return -1
    if arr[l] == x: 
        return l 
    if arr[r] == x: 
        return r 
    return recLinearSearch(arr, l+1, r-1, x) 

res = recLinearSearch(lst, 0, len(lst)-1, x) 

if res != -1:
	print('{} was found at index {}.'.format(x, res))
else:
	print('{} was not found.'.format(x))

Après l'exécution du programme, la sortie sera :

Enter size of list :-  5
Enter the array of 0 element :-  14
Enter the array of 1 element :-  25
Enter the array of 2 element :-  63
Enter the array of 3 element :-  42
Enter the array of 4 element :-  78
Enter number to search in list :-  78
78 was found at index 4.
CODE VN

CODE VN

1637563159

Tìm kiếm tuyến tính bằng Python

Trong bài đăng python này, bạn sẽ tìm hiểu những điều sau:

  • Tìm kiếm tuyến tính là gì?
  • Thuật toán tìm kiếm tuyến tính
  • Viết chương trình Python để tìm kiếm tuyến tính bằng While Loop
  • Viết chương trình Python để tìm kiếm tuyến tính bằng For Loop
  • Tìm kiếm tuyến tính trong Chương trình Python sử dụng Đệ quy

Tìm kiếm tuyến tính là gì?

Trước hết, Tìm kiếm tuyến tính, còn được gọi là tìm kiếm tuần tự, phương pháp này được sử dụng để tìm một phần tử trong danh sách hoặc mảng. Nó kiểm tra từng phần tử của danh sách một / tuần tự cho đến khi tìm thấy một kết quả phù hợp hoặc toàn bộ danh sách đã được tìm kiếm.

Thuật toán tìm kiếm tuyến tính

Triển khai tìm kiếm tuyến tính theo các bước sau:

  • Duyệt qua danh sách / mảng bằng cách sử dụng một vòng lặp.
  • Trong mỗi lần lặp, hãy liên kết  target giá trị với giá trị đã cho của danh sách / mảng.
    • Nếu các giá trị khớp, trả về chỉ mục hiện tại của danh sách / mảng.
    • Nếu không, hãy chuyển sang phần tử mảng / danh sách tiếp theo.
  • Nếu không tìm thấy kết quả phù hợp, hãy quay lại  -1.

Viết chương trình Python để tìm kiếm tuyến tính bằng While Loop

# python program for linear search using while loop

#define list
lst = []

#take input list size
num = int(input("Enter size of list :- "))

for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)

#take input number to be find in list   
x = int(input("Enter number to search in list :- "))

i = 0
flag = False

while i < len(lst):
	if lst[i] == x:
		flag = True
		break

	i = i + 1

if flag == 1:
	print('{} was found at index {}.'.format(x, i))
else:
	print('{} was not found.'.format(x))

Sau khi thực hiện chương trình, kết quả đầu ra sẽ là:

Enter size of list :-  5
Enter the array of 0 element :-  10
Enter the array of 1 element :-  23
Enter the array of 2 element :-  56
Enter the array of 3 element :-  89
Enter the array of 4 element :-  200
Enter number to search in list :-  89
89 was found at index 3.

Viết chương trình Python để tìm kiếm tuyến tính bằng For Loop

# python program for linear search using for loop

#define list
lst = []

#take input list size
num = int(input("Enter size of list :- "))

for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)

#take input number to be find in list   
x = int(input("Enter number to search in list :- "))

i = 0
flag = False

for i in range(len(lst)):
    if lst[i] == x:
        flag = True
        break

if flag == 1:
	print('{} was found at index {}.'.format(x, i))
else:
	print('{} was not found.'.format(x))

Sau khi thực hiện chương trình, kết quả đầu ra sẽ là:

Enter size of list :-  6
Enter the array of 0 element :-  25
Enter the array of 1 element :-  50
Enter the array of 2 element :-  100
Enter the array of 3 element :-  200
Enter the array of 4 element :-  250
Enter the array of 5 element :-  650
Enter number to search in list :-  200
200 was found at index 3.

Tìm kiếm tuyến tính trong Chương trình Python sử dụng Đệ quy

# python program for linear search using for loop

#define list
lst = []

#take input list size
num = int(input("Enter size of list :- "))

for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)

#take input number to be find in list   
x = int(input("Enter number to search in list :- "))

# Recursive function to linear search x in arr[l..r]  
def recLinearSearch( arr, l, r, x): 
    if r < l: 
        return -1
    if arr[l] == x: 
        return l 
    if arr[r] == x: 
        return r 
    return recLinearSearch(arr, l+1, r-1, x) 

res = recLinearSearch(lst, 0, len(lst)-1, x) 

if res != -1:
	print('{} was found at index {}.'.format(x, res))
else:
	print('{} was not found.'.format(x))

Sau khi thực hiện chương trình, kết quả đầu ra sẽ là:

Enter size of list :-  5
Enter the array of 0 element :-  14
Enter the array of 1 element :-  25
Enter the array of 2 element :-  63
Enter the array of 3 element :-  42
Enter the array of 4 element :-  78
Enter number to search in list :-  78
78 was found at index 4.
藤本  結衣

藤本 結衣

1636296420

線形検索のためのPythonプログラム

このチュートリアルでは、Pythonで線形検索プログラムを作成する方法を学習します。

まず、線形検索(シーケンシャル検索とも呼ばれます)は、リストまたは配列内の要素を見つけるために使用されます。一致するものが見つかるか、リスト全体が検索されるまで、リストの各要素を1つずつ/順番にチェックします。

線形探索アルゴリズム

以下の手順に従って線形検索を実装します。

  • ループを使用してリスト/配列をトラバースします。
  • すべての反復で、target 値をリスト/配列の指定された値に関連付け ます。
    • 値が一致する場合は、リスト/配列の現在のインデックスを返します。
    • それ以外の場合は、次の配列/リスト要素に移動します。
  • 一致するものが見つからない場合は、を返し -1ます。

線形検索のためのPythonプログラム

  • whileループを使用した線形検索用のPythonプログラム
  • Forループを使用した線形検索用のPythonプログラム
  • 再帰を使用したPythonプログラムでの線形検索

whileループを使用した線形検索用のPythonプログラム

# python program for linear search using while loop
 
#define list
lst = []
 
#take input list size
num = int(input("Enter size of list :- "))
 
for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)
 
#take input number to be find in list   
x = int(input("Enter number to search in list :- "))
 
i = 0
flag = False
 
while i < len(lst):
    if lst[i] == x:
        flag = True
        break
  
    i = i + 1
  
if flag == 1:
    print('{} was found at index {}.'.format(x, i))
else:
    print('{} was not found.'.format(x))
    

プログラムの実行後、出力は次のようになります。

Enter size of list :-  5
Enter the array of 0 element :-  10
Enter the array of 1 element :-  23
Enter the array of 2 element :-  56
Enter the array of 3 element :-  89
Enter the array of 4 element :-  200
Enter number to search in list :-  89
89 was found at index 3.

Forループを使用した線形検索用のPythonプログラム

# python program for linear search using for loop
 
#define list
lst = []
 
#take input list size
num = int(input("Enter size of list :- "))
 
for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)
 
#take input number to be find in list   
x = int(input("Enter number to search in list :- "))
 
i = 0
flag = False
 
for i in range(len(lst)):
    if lst[i] == x:
        flag = True
        break
  
if flag == 1:
    print('{} was found at index {}.'.format(x, i))
else:
    print('{} was not found.'.format(x))
    

プログラムの実行後、出力は次のようになります。

Enter size of list :-  6
Enter the array of 0 element :-  25
Enter the array of 1 element :-  50
Enter the array of 2 element :-  100
Enter the array of 3 element :-  200
Enter the array of 4 element :-  250
Enter the array of 5 element :-  650
Enter number to search in list :-  200
200 was found at index 3.

再帰を使用したPythonプログラムでの線形検索

# python program for linear search using for loop
 
#define list
lst = []
 
#take input list size
num = int(input("Enter size of list :- "))
 
for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)
 
#take input number to be find in list   
x = int(input("Enter number to search in list :- "))
 
# Recursive function to linear search x in arr[l..r]  
def recLinearSearch( arr, l, r, x): 
    if r < l: 
        return -1
    if arr[l] == x: 
        return l 
    if arr[r] == x: 
        return r 
    return recLinearSearch(arr, l+1, r-1, x) 
     
 
res = recLinearSearch(lst, 0, len(lst)-1, x) 
  
if res != -1:
    print('{} was found at index {}.'.format(x, res))
else:
    print('{} was not found.'.format(x))
    

プログラムの実行後、出力は次のようになります。

Enter size of list :-  5
Enter the array of 0 element :-  14
Enter the array of 1 element :-  25
Enter the array of 2 element :-  63
Enter the array of 3 element :-  42
Enter the array of 4 element :-  78
Enter number to search in list :-  78
78 was found at index 4.

リンク: https://www.tutsmake.com/linear-search-in-python/

#python 

Búsqueda lineal en Python

En esta publicación de Python, aprenderá lo siguiente:

  • ¿Qué es una búsqueda lineal?
  • Algoritmo de búsqueda lineal
  • Escriba un programa Python para búsqueda lineal usando While Loop
  • Escriba un programa Python para búsqueda lineal usando For Loop
  • Búsqueda lineal en el programa Python usando recursividad

¿Qué es una búsqueda lineal?

En primer lugar, una búsqueda lineal, también conocida como búsqueda secuencial, este método se utiliza para encontrar un elemento dentro de una lista o matriz. Comprueba cada elemento de la lista uno por uno / secuencialmente hasta que se encuentra una coincidencia o se ha buscado en toda la lista.

Algoritmo de búsqueda lineal

Implemente la búsqueda lineal siguiendo los pasos a continuación:

  • Recorre la lista / matriz usando un bucle.
  • En cada iteración, asocie el  target valor con el valor dado de la lista / matriz.
    • Si los valores coinciden, devuelve el índice actual de la lista / matriz.
    • De lo contrario, continúe con el siguiente elemento de matriz / lista.
  • Si no se encuentra ninguna coincidencia, regrese  -1.

Escriba un programa Python para búsqueda lineal usando While Loop

# python program for linear search using while loop

#define list
lst = []

#take input list size
num = int(input("Enter size of list :- "))

for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)

#take input number to be find in list   
x = int(input("Enter number to search in list :- "))

i = 0
flag = False

while i < len(lst):
	if lst[i] == x:
		flag = True
		break

	i = i + 1

if flag == 1:
	print('{} was found at index {}.'.format(x, i))
else:
	print('{} was not found.'.format(x))

Después de ejecutar el programa, la salida será:

Enter size of list :-  5
Enter the array of 0 element :-  10
Enter the array of 1 element :-  23
Enter the array of 2 element :-  56
Enter the array of 3 element :-  89
Enter the array of 4 element :-  200
Enter number to search in list :-  89
89 was found at index 3.

Escriba un programa Python para búsqueda lineal usando For Loop

# python program for linear search using for loop

#define list
lst = []

#take input list size
num = int(input("Enter size of list :- "))

for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)

#take input number to be find in list   
x = int(input("Enter number to search in list :- "))

i = 0
flag = False

for i in range(len(lst)):
    if lst[i] == x:
        flag = True
        break

if flag == 1:
	print('{} was found at index {}.'.format(x, i))
else:
	print('{} was not found.'.format(x))

Después de ejecutar el programa, la salida será:

Enter size of list :-  6
Enter the array of 0 element :-  25
Enter the array of 1 element :-  50
Enter the array of 2 element :-  100
Enter the array of 3 element :-  200
Enter the array of 4 element :-  250
Enter the array of 5 element :-  650
Enter number to search in list :-  200
200 was found at index 3.

Búsqueda lineal en el programa Python usando recursividad

# python program for linear search using for loop

#define list
lst = []

#take input list size
num = int(input("Enter size of list :- "))

for n in range(num):
    #append element in list/array
    numbers = int(input("Enter the array of %d element :- " %n))
    lst.append(numbers)

#take input number to be find in list   
x = int(input("Enter number to search in list :- "))

# Recursive function to linear search x in arr[l..r]  
def recLinearSearch( arr, l, r, x): 
    if r < l: 
        return -1
    if arr[l] == x: 
        return l 
    if arr[r] == x: 
        return r 
    return recLinearSearch(arr, l+1, r-1, x) 

res = recLinearSearch(lst, 0, len(lst)-1, x) 

if res != -1:
	print('{} was found at index {}.'.format(x, res))
else:
	print('{} was not found.'.format(x))

Después de ejecutar el programa, la salida será:

Enter size of list :-  5
Enter the array of 0 element :-  14
Enter the array of 1 element :-  25
Enter the array of 2 element :-  63
Enter the array of 3 element :-  42
Enter the array of 4 element :-  78
Enter number to search in list :-  78
78 was found at index 4.