7.编写程序,生成一个包含20 个于1到 50之间随机整数的列表,将其循环左移 5个元素。所谓循环左移是指,每次移动时把列表最左侧的元素移出列表然后追加到列表尾部
时间: 2024-03-03 16:47:32 浏览: 27
好的,以下是Python代码实现:
```
import random
# 生成包含20个介于1到50之间随机整数的列表
nums = [random.randint(1, 50) for i in range(20)]
print("原始列表:", nums)
# 循环左移5个元素
for i in range(5):
first_elem = nums[0]
nums = nums[1:] # 列表切片,取第2个元素到最后一个元素
nums.append(first_elem) # 将第1个元素追加到列表尾部
print("循环左移5个元素后的列表:", nums)
```
这个程序首先使用列表生成式生成包含20个介于1到50之间随机整数的列表。接着,使用循环左移将列表循环移动5个元素。最后输出循环左移5个元素后的列表。
相关问题
编写程序,生成一个包含 20 个介于 1 到 50 之间随机整数的列表,将其循环左移 5 个 元素。所谓循环左移是指,每次移动时把列表最左侧的元素移出列表然后追加到列表尾部。
以下是Python实现:
```python
import random
# 生成包含 20 个介于 1 到 50 之间随机整数的列表
lst = [random.randint(1, 50) for _ in range(20)]
print("原始列表:", lst)
# 将列表循环左移 5 个元素
for _ in range(5):
lst.append(lst.pop(0))
print("循环左移后的列表:", lst)
```
输出:
```
原始列表: [19, 42, 26, 10, 23, 13, 34, 9, 25, 8, 38, 14, 36, 4, 47, 20, 25, 14, 44, 32]
循环左移后的列表: [13, 34, 9, 25, 8, 38, 14, 36, 4, 47, 20, 25, 14, 44, 32, 19, 42, 26, 10, 23]
```
首先使用列表推导式生成包含 20 个介于 1 到 50 之间随机整数的列表。然后使用 `pop()` 方法移除列表最左侧的元素,并使用 `append()` 方法将其追加到列表尾部,重复操作 5 次即可实现循环左移。最后输出循环左移后的列表。
6.编写程序,生成一个包含20个介于1到50之间随机整数的列表,然后使用插入法对给定整数列表中的所有元素升序排序。
好的,以下是Python代码实现:
```
import random
# 生成包含20个介于1到50之间随机整数的列表
nums = [random.randint(1, 50) for i in range(20)]
print("原始列表:", nums)
# 插入法排序
for i in range(1, len(nums)):
j = i
while j > 0 and nums[j] < nums[j-1]:
nums[j], nums[j-1] = nums[j-1], nums[j]
j -= 1
print("排序后的列表:", nums)
```
这个程序首先使用列表生成式生成包含20个介于1到50之间随机整数的列表。接着,使用插入法对给定整数列表中的所有元素升序排序。最后输出排序后的列表。