DEV Community

Cover image for Python One Liners
tinega
tinega

Posted on

1 1 1

Python One Liners

In Python, a "one-liner" is a concise and frequently ingenious solution to a problem that can be stated in only one line of code. For readability and maintainability in bigger codebases, they are not always advised, despite their sometimes-elegant and potent nature. They are, nevertheless, frequently employed in scripting, where conciseness is valued. Here are a few sample lines of code for one-liner solutions.

  • Multiple variable assignments
name, age, occupation = "keisha", 30, "cook"
print(name, age, occupation)
# keisha 30 cook

Enter fullscreen mode Exit fullscreen mode
  • HTTP server
python -m http.server
Enter fullscreen mode Exit fullscreen mode
  • Swap variables
a = "a"
b = "b"
a, b = b, a
print(a, b)
# b a
Enter fullscreen mode Exit fullscreen mode
  • Ternary operator
yob = 1997
print("hey kid(gen alpha)" if yob >= 2013 else "wassup gen z" if yob >= 1995 else"hello millennials" if yob >= 1980 else "hey gen x" if yob >= 1965 else "hello baby boomer")
# wassup gen z

Enter fullscreen mode Exit fullscreen mode
  • Variable unpacking
users = ['kalama', 'kairetu','munga','mwanaisha']
print(*users)
#kalama kairetu munga mwanaisha

user1, user2 , *other_users= users
print(other_users)
#['munga', 'mwanaisha']
Enter fullscreen mode Exit fullscreen mode
  • Reverse a list
z = [10,20,30,40]
print(z[::-1])
#[40, 30, 20, 10]
Enter fullscreen mode Exit fullscreen mode
  • Sort a list
numbers = [1000000, -500000, 999999999, -1000000000, 123456789]
print(sorted(numbers))
# [-1000000000, -500000, 1000000, 123456789, 999999999]
Enter fullscreen mode Exit fullscreen mode
  • Sort a list - reversed
numbers = [1000000, -500000, 999999999, -1000000000, 123456789]
print(sorted(numbers, reverse=True))
#[999999999, 123456789, 1000000, -500000, -1000000000]
Enter fullscreen mode Exit fullscreen mode
  • Filter from a list
numbers = [1,2,3,4,5,6,7,8,9,10]
odd = list(filter(lambda x: x%2!=0, numbers))
print(odd)
#[1, 3, 5, 7, 9]

Enter fullscreen mode Exit fullscreen mode
names = ['lizzy','bruce','wafula']
print([name.title() for name in names])
#['Lizzy', 'Bruce', 'Wafula']
Enter fullscreen mode Exit fullscreen mode
  • Remove duplicates from a list

num = [5, 2, 8, 3, 5, 2, 1, 8, 9, 4, 1]
print(list(set(num)))
# [1, 2, 3, 4, 5, 8, 9]
Enter fullscreen mode Exit fullscreen mode
  • Combine two lists to a dictionary
letters = ["a", "b", "c", "d"]
num = [1,2,3,4]
print(dict(zip(letters, num)))
# {'a': 1, 'b': 2, 'c': 3, 'd': 4}

Enter fullscreen mode Exit fullscreen mode
  • Unpacking using * operator and zip
pair = [('jack', 50),('inaam', 80), ( 'Anna ', 70), ('John', 35)]
names, marks = zip(*pair)
print(names)
print(marks)
#('jack', 'inaam', 'Anna ', 'John')
#(50, 80, 70, 35)
Enter fullscreen mode Exit fullscreen mode
  • Type conversion of items in an iterable using map function
strings = ("1","2","3","4","5","6","7","8")
print(tuple(map(int, strings)))
# (1, 2, 3, 4, 5, 6, 7, 8)

Enter fullscreen mode Exit fullscreen mode
  • Alternative value for input statements

username = input('Name: ') or 'N/A'

#using ternary operator

name_input = input('Name: ')
username = name_input if name_input else 'N/A'

Enter fullscreen mode Exit fullscreen mode
mylist = [1,2,3,4,5]
copy_list = mylist[:]
Enter fullscreen mode Exit fullscreen mode

AWS GenAI LIVE image

How is generative AI increasing efficiency?

Join AWS GenAI LIVE! to find out how gen AI is reshaping productivity, streamlining processes, and driving innovation.

Learn more

Top comments (0)

Qodo Takeover

Introducing Qodo Gen 1.0: Transform Your Workflow with Agentic AI

Rather than just generating snippets, our agents understand your entire project context, can make decisions, use tools, and carry out tasks autonomously.

Read full post

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay