Python初试~

Polar Web【简单】PHP反序列化初试 本题考查PHP代码分析、反序列化以及序列构造的技巧需要对PHP面向对象设计有所认识 阅读详情

Python是一门很高级的编程语言,与c++,c不同,用Python编程可以容易地实现自己的想法,实现想要的功能,并且编写出的程序清晰易懂。
下面我尝试着编写了两个小程序:
1.倒序输出参数行列表以及参数

import sys

for i in sys.argv[:0:-1] :
    print i[::-1],
print "\b"

2.输入字符串使其中的字符间隔两个输出

x = raw_input()
print x[0::3] + x[1::3] + x[2::3]

看起来是不是很简单,但如果用c++来对字符串进行处理的话,相对来说就简单多了。对于上面的例子,关键部分就在于Python的列表,它可以说是Python的“苦力“。它属于Python序列一种。

下面简单介绍序列,以及列表。

例如

>>>greeting = 'Hello, how are you?'
>>>greeting[0]
'H'
>>>greeting[-1]
'?'

这里字符串就是一个由字符组成的序列(但不是列表),可以使用索引来获取序列中元素。索引0指向第一个元素,这里就是’H’。不同与其他语言,Python可以用负数作为索引,这时会从最后的元素开始计数,最后一个元素的编号为-1。

接下来介绍分片,分片操作用来访问序列中一定范围内的元素

>>>numbers = [1,2,3,4,5,6,7,8,9]
>>>numbers[2:4]
[3,4]
>>>numbers[0:1]
[1]
>>>numbers[2:]
[3,4,5,6,7,8,9]
>>>numbers[-2:0]
[]
>>>numbers[-2:]
[8,9]

这里numbers是一个列表,其中有1~9,9个数(列表中的元素也可以是字符串,等等)
可以看出分片操作需要提供两个索引作为边界,第1个索引是要提取的第1个元素,第2个索引是分片之后的第1个元素的编号,即分片中不包括第2个索引对应的元素。如果要包括序列中最后一个元素,就可以不写出第2个索引。
如果分步中最左边的索引比它右边的出现的晚,结果会是一个空序列。

在分片时,除了开始和结束的索引,其实还有一个隐藏的参数步长,默认为1。如下:

>>>numbers[0::1]
[1,2,3,4,5,6,7,8,9]
>>>numbers[0::2]
[1,3,5,7,9]

通过这个例子可以看到步长的作用,分步操作就是按照这个步长来逐个遍历序列的元素,然后返回开始和结束点之间的元素。

步长不能为0,不过可以为负值,此时分片从右到左提取序列中的元素,且开始点(索引)应大于结束点

>>>numbers[7:5:-1]
[8,7]
>>>numbers[5::-2]
[6,4,2]

除了这些,序列之间还可以相加,序列还可以使用乘法

>>>[1,2,3] + [4,5,6]
[1,2,3,4,5,6]
>>>'python'*5
'python'

序列中还有几个内建函数十分有用,如len,min,max。len函数返回序列中所包含元素的数量,min函数和max函数则会分别返回序列的最大最小元素。

>>>len(numbers)
9
>>>max(numbers)
9
>>>min(numbers)
1

前面的例子多次运用了列表,我们可以看出其功能强大,这里就不对列表再进行深入。
再来看最开始的两个小程序

第一个程序:倒着打印出所有参数

import sys

for i in sys.argv[:0:-1] :
    print i[::-1],
print "\b"

第一行我们引入sys模块,变量sys.argv包含传递到Python解释器的参数,包括脚本名称。
sys.argv列表中第一个元素是脚本名(xx.py),后面的元素为参数。
第三行使用for循环,for i in sys.argv[:0:-1]表示每次循环,i依次为sys.argv[:0:-1]列表中的元素(倒序的参数)
第四行print i[::-1]倒着输出这个参数,加”,”表示输出之后空格,而不是换行
第五行print”\b”,\b转义为退格,可以去掉最后多出的一个空格

试试从cmd上传入参数运行:
这里写图片描述
我们得到了想要的结果。

再来看看下一个程序:输入一个字符串实现跳两个字符输出

x = raw_input()
print x[0::3] + x[1::3] + x[2::3]

第一行 x = raw_input() 表示将输入的内容以字符串传给变量x
下一行,利用分片和序列相加,就可以轻松把一个字符串跳两个字符输出。

运行如下
这里写图片描述
这只需两行代码就能实现,看起来不可思议。如果对python进一步了解,你会发现更多惊喜,除了用C语言那样繁琐的代码,竟然还有这样简单的方法。

今日的Python之旅就到这里啦~

Python编程快速入门 1. python的起源Python 的创始人为吉多·范罗苏姆(Guido van Rossum)。1991 年,第一个 Python 解释器诞生,它是用C语言实现的,并能够调用C 语言的库文件。2. 解释器计算机不能直接理解任何除机器语言以外的语言,所以必须要把程序员所写的程序语言翻译成机器语言,计算机才能执行程序。将其他语言翻译成机器语言的工具,被称为编译器。编译器翻译的方式有两种:一个是编译,另外一个是解释。两种方式之间的区别在于翻译时间点的不同。当编译器以解释方式运行的时候,也称之为解释器。 阅读详情

相关推荐

Python全栈(六)项目前导之3.初试Git

Git是一个分布式的版本控制软件,分布式的发展经历了四个阶段:文件(夹)拷贝、本地版本控制、集中式版本控制和分布式版本控制。版本控制的原因是要保留之前所有的版本,以便回滚和修改,可以浏览所有开发的历史纪录;安装时鼠标右键看到Bash则说明安装成功。Git管理文件需要先初始化,并且第一次使用Git时还要配置个人信息,通过add管理文件,commit生成版本,log查看版本。Git包括三大区域,分别是工作区、暂存区和版本库。回滚用reset --hard命令,文件恢复用checkout命令。

CUFEECR的博客 3281

python 编程基础课程

课程目标是让更多的初学者、对python 感兴趣的人群,在最短的时间内全面系统的学习python编程课程。课程如下特点:1、知识点非常概括精炼、通俗易懂。2、讲课风格注重实践、每个知识点有多个案例。3、边学边写代码,知识点与实际结合,更加形象深入理解Python课程。4、课程过程中间增加综合实践例子,提高大家学习过程中间对Python的积极性和成就感。5、阶段性项目实践提升,项目实践能力。6、对学习内容会进行阶段性总结和问题答疑。  

AtmelStudio 7 ASF库学习笔记一:新建工程、配置时钟、下载程序和查看官方例程

由于需要学习一下atmel的atsaml 系列,使用AtmelStudio 7开发,之前主要用STM32,现在看到Atmel的库函数,其实是有些类相似的。 ASF3的库对应ST的标准库。ASF4对应ST的HAL库,Ateml Start对应STM32CubeMX。但在这里还是用ASF3来开发,因为Ateml Start还不支持我的这个芯片,而且和STM32的HAL库类似,ASF4为了好移植都是底...

yxy244的博客 8656

Python的基础编程

python的基础了解和认识

TYM121380的博客 1万+

RagFlow实战:如何用DeepDoc引擎高效处理扫描PDF文档(附完整代码解析)

本文详细解析了如何利用RagFlow的DeepDoc引擎高效处理扫描PDF文档。通过实战演示从环境搭建、PDF预处理、文本检测与识别,到布局分析与表格结构提取的完整流程,并提供了完整的代码实现。该方案超越了传统OCR,能输出保留原始版面信息的结构化数据,为构建高质量知识库提供了强大支持。

weixin_29245767的博客 300

Tina Linux WiFi驱动移植避坑指南:以RTL8733bs为例,详解设备树、Kconfig与固件依赖

本文详细解析了在Tina Linux上移植RTL8733bs WiFi驱动的关键步骤与常见问题,涵盖设备树配置、内核依赖、固件加载及启动时序等核心环节。通过实战案例和排查清单,帮助开发者规避SDIO控制器配置、电源管理、GPIO极性等典型陷阱,确保驱动稳定运行。

weixin_29164185的博客 262

Python学习之Python入门知识(一)

Python 英文本意为“蟒蛇”,直到 1989 年荷兰人 Guido van Rossum (简称 Guido)发明了一种面向对象的解释型编程语言(后续会介绍),并将其命名为 Python,才赋予了它表示一门编程语言的含义。 图 1 Python 图标 说道 Python,它的诞生是极具戏曲性的,据 Guido 的自述记载,Python 语言是他在圣诞节期间为了打发时间开发出来的,之所以...

徐泗空的博客 1064

用ESP32-S3和USB摄像头DIY一个无线图传监控(附完整代码和接线图)

本文详细介绍了如何利用ESP32-S3开发板和USB摄像头打造一套高性价比的无线图传监控系统。从硬件选型、接线图到代码实现,提供了完整的DIY方案,特别适合家庭监控、宠物看护等场景。通过优化WiFi传输和双核任务分配,实现了稳定的视频流传输,整套方案成本控制在200元以内。

weixin_33701251的博客 519

UltraMemcache , UltraMySQL 初试

UltraMemcache , UltraMySQL 初试 UltraMemcache , UltraMySQL 初试 - 冷眼 - ITeye技术网站UltraMemcache , UltraMySQL 初试 博客分类:pythongevent这两个是由ES...

103

DevEco Studio在初始化时出现Installing pnpm@8.13.1...npm ERR! code ETIMEDOUTnpm ERR! syscall connectnpm E

npm的仓库源设置的有问题,下载不了鸿蒙相关组件,所以你的启动依赖都没有,或者以前下载过npm,使用的源改的乱七八糟了。以前安装过前端相关的node.js的话,启动的时候记得使用管理远权限。(DevEco Studio)就出错,npm显示超时。

qq_56392862的博客 2628

手把手教你用DCA1000EVM解析IWR6843毫米波雷达数据(附MATLAB代码)

本文提供了一份详尽的实战指南,手把手教你使用DCA1000EVM采集并解析TI毫米波雷达IWR6843的原始数据。内容涵盖硬件连接配置、mmWave Studio参数设置、LVDS数据流结构解析,并附有核心MATLAB代码,详细演示了从原始二进制文件到距离-速度谱的信号处理全链路,帮助开发者快速掌握数据解析与处理的关键步骤。

terraform7cloud的博客 227

Python影视爬虫实战:高并发与反爬策略解析

网络爬虫作为数据采集的核心技术,其核心原理是通过模拟HTTP请求获取目标数据。在Python生态中,异步IO和代理池技术大幅提升了爬虫的并发能力,而对抗反爬机制则需要构建从请求头伪装到行为模拟的完整防御体系。影视类网站因其数据价值往往部署了验证码、频率检测等多重防护,通过结合httpx异步框架与动态代理方案,可以实现98%以上的请求成功率。本文基于日均300万页的实战经验,详解如何通过TCP连接优化、TLS指纹伪装等工程手段,构建稳定的分布式影视资源采集系统。

weixin_34060299的博客 166

深入解析SDC时钟约束:从create_clock到set_clock_groups的实战指南

本文深入解析SDC时钟约束,从create_clock到set_clock_groups的实战应用,帮助数字芯片设计工程师掌握时序约束的核心技巧。通过详细讲解时钟三要素(波形定义、不确定性和时钟关系)及实战案例,提升时钟约束的精准性和效率,避免常见设计陷阱。

weixin_29274337的博客 1077

上海财经应用统计考python_20上财应用统计415分经验帖(初试第一)

写在前面:统计战线有上财应统定向班课程,感兴趣的同学可以加太阳微信咨询。01 基本情况介绍浙江双非财经院校跨考上财应用统计,初试排名第一。总分415,政治71 英二87 数三134 专业课123,总成绩85.52。02 备 考 书 籍 (T0-T4代表不同的学习阶段)政治T0 肖4 肖8 知识点提要 肖老最后补充的试卷T1 精讲精炼 1000题 市面上各类模拟卷T2 优题库 小...

weixin_39587238的博客 384

海思图像质量之HiPQTool调试

文章目录一. HiPQTool 界面二. 图像调试三. 将调试参数写入程序中 一. HiPQTool 界面 二. 图像调试 三. 将调试参数写入程序中

lzg2011的博客 2377

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

python解超越方程_初试在Python中使用PARI/GP

BoJone很喜欢Python,也很喜欢数论,所以就喜欢利用Python玩数论了。平时也喜欢自己动手写一些数论函数,毕竟Python支持大整数高精度运算,这点是非常好的;但是,在很多实际应用中,还是希望能有一个现成的数论函数库来调用。之前尝试过数学研发网的HugeCalc库,但是由于各种不熟悉不了了之。后来论坛上的无心老兄推荐了PARI/GP,小试一下,居然在Python上成功调用了。以后再也不用...

weixin_32531655的博客 1145

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

CentOS7安装Telnet服务并初试Python Telnetilb模块

“在Python中,支持Telnet/SSH远程登录访问网络设备的模块很多,常见的有Telnetlib、Ciscolib、Paramiko、Netmiko和Pexpect。其中,Telnetlib和Ciscolib对应Telnet协议,后面3个对应SSH协议。”(王印老师《网络工程师的Python之路——网络运维自动化实战》,P124) 安装Telnet及相应服务 检查设备是否已有telnet-server、telnet与xinetd服务: [root@zabbix-server ~]# rpm -

m0_51770049的博客 601

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

python中文字符画_初试Python字符画

最近尝试了用Python的PIL模块把普通图片转换成字符画。这里就简单介绍一下我用的方法。原理:1.先将图片转换成灰度模式2.根据图像每个位置的灰度值分别替换成不同字符,灰度越大的像素对应看起来越黑的字符比如:@%#*+=-.3.写入文本文档PIL(Python Imaging Library)先导入PIL。Image模块是在Python PIL图像处理中常见的模块,对图像进行基础操作的功能基本都...

weixin_39834328的博客 974

初试OpenFace做人脸图像对比

一.安装python 二.安装git sudo apt-get install git 三.安装c++标准库 sudo apt-get install libboost-dev sudo apt-get install libboost-python-dev 四.下载OpenFace代码 git clone https://github.com/cmusatyalab/openf...

libocao的博客 1550

python 多线程初试 与logger模块

对线程的一些理解:一个程序为一个进程(process),一个进程下可以有多个线程(threading),至少有一个线程。线程是最小的运行单位,多个线程共享一个进程的所有资源,每个线程执行不同的任务。看到一个形象的解释是,进程是一个房子,里面的人是线程。如果有多个人的话,许多人共享房子里的资源。有时某些资源在一段时间里只能一个人使用(比如厕所),某些资源在一段时间里只能由固定数量的人使用(比如厨房在...

qq_39304201的博客 5624

初试nose

阅读《Practical Programming -An Introduction to Computer Science Using Python》一书时,在第4章提到了使用Nose对Python代码进行测试,因而小试牛刀了一下。 ----------------------------------------------------------------------------------

华秋实的专栏 6807

【Regex】初试Python下的中文正则表达式

真的是第一次在Python上做正则表达式呀……走了好多弯路,表示自己实在是笨的不行,难得实现了个小Demo,做点备忘好了。 简要概括一下就是:英文正则亲和度蛮高的,随意;中文,转成Unicode再说话!

CD's Coding 2584

【苏州大学】考研初试复试资料分享

给同学们送福利啦~提供给同学们计算机/软件工程等相关专业的各种学校的初试复试资料集合。资料一般包含初试真题,往年学长学姐考研经验,通知,复试资料等等。这次分享的是苏州大学的考研资料~https://pan.baidu.com/s/11l9mhcYx6X657WnlnUIxFQ提取码:e5n4资料为百度网盘链接,一直有效,如出现问题请联系我。推荐用电脑解压,用手机可能出...

计算机与软件考研 190

算法初试<1>数论算法

1.生成随机数 1.1 c语言 rand() and srand #include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int a; srand((unsigned)time(NULL)); //读取系统时间,产生一个种子数值 a = rand()%10; printf("%d\n", a);//可得到0~9的数 system("pause");

Pvr1sC的博客 365

初试mininet(可选PyCharm)

目录 0x00 Mininet 0x01 Important classes, methods, functions 0x02 Sample 0x04 run in shell 0x05 Output 0x06 Problems 0x07 Paint...

weixin_30938149的博客 256
上一篇: 初接触python,,qwq
Prothy
博客等级 码龄10年 1粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值