How do you rotate a word in a string in python?

I was trying to make the string HELLO to OHELL in Python. But couldn't get any way to rotate it without working with loops. How to code for it in just 1-2 lines so that I could get the desired pattern?

asked Feb 4, 2018 at 10:55

2

Here is one way:

def rotate(strg, n):
    return strg[n:] + strg[:n]

rotate('HELLO', -1)  # 'OHELL'

Alternatively, collections.deque ("double-ended queue") is optimised for queue-related operations. It has a dedicated rotate() method:

from collections import deque

items = deque('HELLO')
items.rotate(1)

''.join(items)  # 'OHELL'

answered Feb 4, 2018 at 11:06

How do you rotate a word in a string in python?

jppjpp

152k32 gold badges256 silver badges319 bronze badges

1

You can slice and add strings:

>>> s = 'HELLO'
>>> s[-1] + s[:-1]
'OHELL'

This gives you the last character:

>>> s[-1]
'O'

and this everything but the last:

>>> s[:-1]
'HELL'

Finally, add them with +.

answered Feb 4, 2018 at 10:58

Mike MüllerMike Müller

79.3k18 gold badges157 silver badges159 bronze badges

2

Here is what I use to rotate strings in Python3:

To rotate left by n:

def leftShift(text,n):
    return text[n:] + text[:n]

To rotate right by n:

def rightShift(text,n):
    return text[-n:] + text[:-n]

answered Mar 18, 2020 at 23:50

How do you rotate a word in a string in python?

Clayton C.Clayton C.

8631 gold badge8 silver badges16 bronze badges

Here is a simple way of looking at it...

s = 'HELLO'
for r in range(5):
    print(s[r:] + s[:r])


HELLO
ELLOH
LLOHE
LOHEL
OHELL

answered Aug 30, 2019 at 14:28

KonchogKonchog

1,81018 silver badges21 bronze badges

I would agree with Mike Müller's answer:

s = 'HELLO'
s = s[-1] + s[:-1]

I would like to share another way of looking at s[:-1]

s[0:-1]

This means that it is starting from the start and including everything except for s[-1]. I hope this helped.

answered Mar 16, 2019 at 20:59

How do you rotate a word in a string in python?


A string is given, our task is to slicing the string into two way. One is clockwise and another anticlockwise.

1. Left (Or anticlockwise) rotate the given string by d elements (where d <= n).

2. Right (Or clockwise) rotate the given string by d elements (where d <= n).

Example

Input: string = "pythonprogram"
d = 2
Output: Left Rotation: thonprogrampy
Right Rotation: ampythonprogr

Algorithm

Step 1: Enter string.
Step 2: Separate string in two parts first & second, for Left rotation Lfirst = str[0 : d] and Lsecond = str[d :]. For Right rotation Rfirst = str[0 : len(str)-d] and Rsecond = str[len(str)-d : ].
Step 3: Now concatenate these two parts second + first accordingly.

Example Code

def rotate(input,d):
   # Slice string in two parts for left and right
   Lfirst = input[0 : d]
   Lsecond = input[d :]
   Rfirst = input[0 : len(input)-d]
   Rsecond = input[len(input)-d : ]
   print ("Left Rotation : ", (Lsecond + Lfirst) )
      print ("Right Rotation : ", (Rsecond + Rfirst) )
      # Driver program
   if __name__ == "__main__":
      str = input("Enter String ::>")
d=2
rotate(str,d)

Output

Enter String ::> pythonprogram
Left Rotation: thonprogrampy
Right Rotation: ampythonprogr

How do you rotate a word in a string in python?

Updated on 23-Jun-2020 16:09:07

  • Related Questions & Answers
  • String slicing in C# to rotate a string
  • Rotate String in Python
  • String slicing in Python to check if a can become empty by recursive deletion
  • Program to rotate a string of size n, n times to left in Python
  • Python - Ways to rotate a list
  • Program to find a good string from a given string in Python
  • Program to reverse a list by list slicing in Python
  • Python List Comprehension and Slicing?
  • Alternate range slicing in list (Python)
  • A unique string in Python
  • How to reverse a string in Python?
  • How to capitalize a string in Python?
  • How to split a string in Python
  • String Transforms Into Another String in Python
  • Rotate Array in Python

How do you rotate a word in Python?

Step 1: Enter string. Step 2: Separate string in two parts first & second, for Left rotation Lfirst = str[0 : d] and Lsecond = str[d :]. For Right rotation Rfirst = str[0 : len(str)-d] and Rsecond = str[len(str)-d : ]. Step 3: Now concatenate these two parts second + first accordingly.

How do you rotate a value in Python?

Let's discuss different ways we can rotate a list in Python..
Method 1: Rotate a list using Slicing..
Method 2: Rotate a list using list Comprehension..
Method 3: Rotate a list using collections. deque. rotate().

Is there a rotate command in Python?

rotate is undoable, NOT queryable, and NOT editable. The rotate command is used to change the rotation of geometric objects. The rotation values are specified as Euler angles (rx, ry, rz). ... .

How do I rotate a string to the left?

Method#1: A Simple Solution is to use a temporary string to do rotations. For left rotation, first, copy last n-d characters, then copy first d characters in order to the temporary string. For right rotation, first, copy last d characters, then copy n-d characters.