python学习笔记9.1-系统交互接口

本文主要主要介绍python语言user与操作系统的交互接口,主要包括直接输入或者系统参数两种输入方式,输出主要就是print函数和format()表达式了,前面已经详细的说过了,参阅博客: python学习笔记2.2-print函数以及格式化输出

1.0 直接输入

直接输入使用的函数是input()

input('this is your suggestion info')
a = input('plese input a num:')
if int(a) == 5:
    print('yes')
else:
    print('no')

注意事项: - 提示语可以没有,也就是直接:

a=input()
  • 所有的输入都是字符串类型,所以在实例中用int()函数将字符串转换为数字,这是因为操作系统与用户交互都是用的字符串交互。
a = input()
print(type(a))

上面的例子最后打印:<class 'str'> 说明了输入格式都是字符串。

2.0 系统参数

可能有很多人不理解系统参数是什么意思,用c语言主函数很好表达:

int main(int argc, char *argv[])

* argc: 参数的个数,不给main()函数传递参数时默认值为1,即至少有一个参数为该可执行文件的文件名(含目录)。
* argv: 为指针数组,分别指向各个字符串参数的首地址,其中argv[0]存储的是可执行文件的文件名的首地址。

也就是说程序运行的时候肯定会有传入参数的,一般而言,第一个参数是当前工作目录。 * 划重点: * python传入的系统参数是一个参数数组,第一个参数:argv[0]是当前工作目录。

import sys
print(sys.argv[0])

从代码可以看出,python的系统参数由sys.argv来调用,它是一个数组,第一个为sys.argv[0],也是默认的,并不用自己输入。 第二个为sys.argv[1],…以此类推。

当有多个参数怎么调用呢,这里有个py文件:a.py

# a.py
# 打印传入2个参数
print(sys.argv[0]) #第一个是工作目录,并不用用户输入
print(sys.argv[1])
print(sys.argv[2])

打开控制台(win为cmd),定向到a.py所在的目录(我的是E:\home):cd /d E:\home 再输入:python a.py aaa bbb(用python打开.py文件,并传入参数 aaa bbb)

* 重点: 传入参数的格式都是字符串*

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏木木玲

“类加载机制”详解

3011
来自专栏阮一峰的网络日志

JavaScript 的 this 原理

2086
来自专栏C语言及其他语言

C 语言中的指针和内存泄漏

原文出处: IBM developerworks 引言 对于任何使用 C 语言的人,如果问他们 C 语言的最大烦恼是什么,其中许多人可能会回答说是指针和内存泄...

4764
来自专栏orientlu

std::sort coredump 说起

c++ 标准库 sort() 默认采用 < 这个 operator 来排序的, 另个一个重载函数增加第三个参数,指定一个比较的函数,函数接受两个参数。 对于基...

1763
来自专栏我的博客

PHP反射机制

PHP反射机制它是用来导出或提取出关于类、方法、属性(私有保护等属性也能获取)、参数等的详细信息,包括注释。 <?php class Test{ ...

4057
来自专栏好好学java的技术栈

并发基础(三): java线程优先级小试牛刀

1192
来自专栏JavaEdge

虚拟机的类加载机制1 类加载的时机

27110
来自专栏PHP在线

了解这些PHP小技巧吗?

1. $_POST并非是HTTP POST过来的数据, 如json格式的数据就没法接受,这是因为由于历史原因,php只能解析Content-Type为 appl...

2855
来自专栏java一日一条

Java内存模型深度解读

Java内存模型规范了Java虚拟机与计算机内存是如何协同工作的。Java虚拟机是一个完整的计算机的一个模型,因此这个模型自然也包含一个内存模型——又称为Jav...

1052
来自专栏Jimoer

JVM学习记录-类加载的过程

类的整个生命周期的7个阶段是:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(I...

762

扫码关注云+社区

领取腾讯云代金券