python-首字母移位(PythonTip)

[题目描述]
编写一个程序,将句子中每个单词的首字母移位到下一个单词。定义函数shift_first_letter(),参数为sentence(字符串)。在函数内,将句子中每个单词的首字母移位到下一个单词。最后一个单词的首字母移位到句子的第一个单词。
比如create a function,移位后为freate c aunction,步骤为:句子中单词的首字母为:
create → c
a → a
function → f
经过右移一步后:
f → freate
c → c
a → aunction
所以最终结果为freate c aunction。
示例输入:
create a function
示例输出:
freate c aunction


完整代码展示:
a=list(map(str,input().split()))
b=[]
for i in range(0,len(a)):
      for j in range(0,len(str(a[i]))):
           if j==0:
               b.append(a[i][j])
b.reverse()
b.append(b[0])
b.remove(b[0])
b.reverse()
c=0
e=[]
while c<len(a):
       sum=""
       d=list(str(a[c]))
       for k in range(0,len(d)):
             if k==0:
                  sum+=b[c]
            else:
                  sum+=d[k]
      e.append(sum)
      c+=1
for l in range(0,len(e)):
    print(e[l],end=" ")


代码解释:
a=list(map(str,input().split())) ”,让用户输入一行字符串,并将其分割后储存进列表a中。
b=[]
 for i in range(0,len(a)):
       for j in range(0,len(str(a[i]))):
            if j==0:
                b.append(a[i][j])            
”,建立一个空列表b,依次遍历列表a中的每一个元素,并依次遍历每个元素中的每个字符,判断其是否为该元素的首字符:如果是,则将该元素的首字符添加进列表b中;否则不作处理。直至遍历结束。
b.reverse()
 b.append(b[0])
 b.remove(b[0])
 b.reverse()      ”
,先反转列表b,再将其第一个元素添加进末尾,再删除第一个元素,再反转列表b,意义在于将列表b中每个元素向右旋转一位。
c=0
 e=[]
 while c<len(a):
        sum=""
        d=list(str(a[c]))
        for k in range(0,len(d)):
              if k==0:
                   sum+=b[c]
             else:
                   sum+=d[k]
       e.append(sum)
       c+=1
                               ”,设循环密码子为c,并将其初始值设为0,建立一个空列表e。当c<len(a)时,建立一个空字符串sum,将a[c]转换为字符储存进列表d中。接着遍历列表d,如果k==0,则让sum连接b[c];否则sum连接d[k],遍历结束后,将连接完成的字符串sum添加进列表e中。每循换一次,就令c+1,直至c==len(a),跳出整个whle循环。
for l in range(0,len(e)):
        print(e[l],end=" ")
   ”,依次遍历列表e中所有元素并打印,每两个元素之间插入一个空格。


运行效果展示:

993ada6818554741b31e896b2d15732a.jpg
            
        

81047b5ae03a4fcab575c62e0386facc.jpg 

              (声明:以上内容均为原创) 


        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/874574.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python进阶---闭包与装饰器

一、闭包 在Python中&#xff0c;闭包是指一个函数内部定义的函数&#xff0c;这个内部函数可以访问并修改其外部函数的局部变量&#xff0c;即使外部函数已经执行完毕。闭包可以通过多层函数嵌套来实现。 闭包的三要素&#xff1a; 1、外部函数嵌套内部函数 2、外部函数返回内…

SQL 注入漏洞详解 - Union 注入

1)漏洞简介 SQL 注入简介 SQL 注入 即是指 Web 应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在 Web 应用程序中事先定义好的查询语句的结尾上添加额外的 SQL 语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,…

罗技 F710 无线游戏手柄用户指南

罗技 F710 无线游戏手柄用户指南 Gamepad F710功能系统XInput 游戏DirectInput的 游戏1.左键/触发器按钮为数字&#xff1b; 触发器是模拟的按钮和触发器是数字的和可编程的*2.右键/触发器按钮为数字&#xff1b; 触发器是模拟的按钮和触发器是数字的和可编程的*3.方向键8 向方…

记录|C#+winform创建扁平化风格界面

本项目的C#内容是自己跟做的&#xff0c;自己做的内容已经打包&#xff0c;可以通过自己跟做写的Dashboard界面&#xff0c;C#下的winform模式下载获得&#xff0c;但是需要花费3个积分 目录 前言一、左边设置和步骤界面步骤Step1.Step2.Step3.Step4Step5 二、右边属性和步骤属…

【BUG】已解决:ModuleNotFoundError: No module named ‘requests‘

ModuleNotFoundError: No module named ‘requests‘ 目录 ModuleNotFoundError: No module named ‘requests‘ 【常见模块错误】 【解决方案】 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页&#xff0c;我是博主英杰&#xff0c;211科班出身&a…

Django已经登录但是还是提示登录

问题描述 在使用 Django 开发网站时&#xff0c;你可能会遇到一个问题&#xff1a;当用户在访问网站时&#xff0c;如果 URL 从 https://200sm.com/chat/ 切换到 https://www.200sm.com/chat/&#xff0c;用户可能会被要求重新登录或遇到其他验证问题。这是因为 Django 默认情…

Python怎样读取URL生成PDF

1. 安装依赖的exe 需要在这个网址&#xff0c;安装一个exe包&#xff0c;地址&#xff1a;https://wkhtmltopdf.org/ 进入网址后&#xff0c;点这个位置&#xff1a; 选择一个你的操作系统的下载链接&#xff1a; 安装后的exe文件&#xff1a; C:\Program Files\wkhtmltopdf…

vue3.2使用@wangeditor/editor-for-vue实现富文本编辑器,后端使用thinkphp上传图片

Vue 组件代码 npm i wangeditor/editor-for-vue<template><div style"border: 1px solid #ccc;height:600px;"><Toolbar style"border-bottom: 1px solid #ccc" :editor"editorRef" :defaultConfig"toolbarConfig" :m…

记录解决springboot项目上传图片到本地,在html里不能回显的问题

项目场景&#xff1a; 项目场景&#xff1a;在我的博客系统里&#xff1a;有个相册模块&#xff1a;需要把图片上传到项目里&#xff0c;在html页面上显示 解决方案 1.建一个文件夹 例如在windows系统下。可以在项目根目录下建个photos文件夹&#xff0c;把上传的图片文件…

n9.Nginx 自定义访问日志

Nginx 自定义访问日志 访问日志是记录客户端即用户的具体请求内容信息&#xff0c;而在全局配置模块中的error_log是记录nginx服务 器运行时的日志保存路径和记录日志的level&#xff0c;因此两者是不同的&#xff0c;而且Nginx的错误日志一般只有一 个&#xff0c;但是访问日…

【Pytorch实用教程】pytorch中random_split用法的详细介绍

在 PyTorch 中,torch.utils.data.random_split 是一个非常有用的函数,用于将数据集随机分割成多个子集。这在机器学习和深度学习中非常常见,特别是当你需要将数据集分割成训练集和测试集或验证集时。这里是 random_split 的详细用法介绍: 功能 random_split 用于随机地将…

java面试-场景题

一、集合 1. java中如何给一个超大的一个亿左右的list数据去重&#xff1f; 我当时的回答是使用HashSet或Stream流的distinct语法。但是面试官好像更注重内存的消耗问题。 使用HashSet&#xff1a; HashSet 是一个不允许有重复元素的集合。你可以将List中的元素添加到HashSe…

华为OD2024D卷机试题汇总,含D量50%+,按算法分类刷题,事半功倍

目录 专栏导读华为OD机试算法题太多了&#xff0c;知识点繁杂&#xff0c;如何刷题更有效率呢&#xff1f; 一、逻辑分析二、数据结构1、线性表① 数组② 双指针 2、map与list3、队列4、链表5、栈6、滑动窗口7、二叉树8、并查集9、矩阵 三、算法1、基础算法① 贪心思维② 二分查…

虚拟机固定配置IP

在Hyper-V中&#xff0c;vEthernet (Default Switch) 是Hyper-V自带的默认虚拟交换机&#xff0c;它允许虚拟机直接连接到宿主机网络或外部网络。这个虚拟交换机可以通过Hyper-V管理器或PowerShell等工具进行管理和配置。以下是具体的操作步骤&#xff1a; 一、通过Hyper-V管理…

SAP 贷项销售订单简介

SAP 贷项销售订单简介 1. 什么是销售贷方销售订单?2. 创建销售贷方销售订单的场景3. 销售贷方销售订单的创建流程直接创建发票---VF01将会计凭证过账到会计核算查看贷项销售订单凭证流查看客户明细---FBL5N贷项后台配置SAP销售贷方销售订单(Sales Credit Memo Request)是销售…

Windows定时任务实现关闭和开启声音

目录 1. 下载并放置 nircmd.exe1.1 下载 NirCmd&#xff1a;1.2 放置 nircmd.exe&#xff1a; 2. 定时关闭声音2.1 打开任务计划程序&#xff1a;2.2 创建基本任务&#xff1a;2.3 设置任务名称和描述&#xff1a;2.4 触发器&#xff1a;2.5 操作&#xff1a;2.6 设置程序或脚本…

面试官问:Django、Flask、FastAPI,你选哪个?为什么?

如果你是python Web方向的开发工程师&#xff0c;那么在面试中&#xff0c;会经常遇到面试官问这个问题&#xff1a; “在Python的三个流行Web框架&#xff1a;Django、Flask和FastAPI&#xff0c;说说它们的异同&#xff0c;以及你是怎么选择合适的框架&#xff1f;” 异同对…

AndroidStudio 编辑xml布局文件卡死问题解决

之前项目编写的都是正常&#xff0c;升级AndroidStudio后编辑布局文件就卡死&#xff0c;还以为是AndroidStudio文件。 其实不然&#xff0c;我给整个项目增加了版权声明。所以全部跟新后&#xff0c;布局文件也增加了版权声明。估计AndroidStudio在 解析布局文件时候因为有版…

【目标检测】Anaconda+PyTorch(GPU)+PyCharm(Yolo5)配置

前言 本文主要介绍在windows系统上的Anaconda、PyTorch、PyCharm、Yolov5关键步骤安装&#xff0c;为使用yolo所需的环境配置完善。同时也算是记录下我的配置流程&#xff0c;为以后用到的时候能笔记查阅。 Anaconda 软件安装 Anaconda官网&#xff1a;https://www.anaconda…

Java API和API帮助文档

API:目前是JDK中提供的各种功能的Java类。 简单理解&#xff0c;API就是别人已经写好的东西&#xff0c;我们不需要自己编写&#xff0c;直接用就可以了。比如Random,Scanner....。 Java在设计的时候&#xff0c;将api收入在JDK-API帮助文档中&#xff0c;可直接在API帮助文档…