lena萌宝宝

导航

python小知识- webbrowser模块 + join()方法

一。join描述

将序列中的元素以指定的字符连接生成一个新的字符串。

语法

语法: ‘sep’.join(seq)

参数说明: 
sep:分隔符。可以为空 
seq:要连接的元素序列、字符串、元组、字典

返回值

返回通过指定字符连接序列中元素后生成的新字符串。

>>> a="abcd"
>>> ",".join(a)
'a,b,c,d'

>>> "|".join(['a','b','c'])
'a|b|c'

>>> ",".join(('a','b','c'))
'a,b,c'

二。webbrowser

#导入 webbrowser 模块,用于加载浏览器
#导入 sys 模块,用于读入可能的命令行参数
import  webbrowser,sys
#sys.argv是字符串的列表.将它传递给join()方法,这将返回一个字符串
if len(sys.argv)>1:
#不希望程序的名称出现在这个字符串中,所以不是使用sys.argv,而是使用sys.argv[1:],砍掉这个数组的第一个元素.
# 这个表达式求值得到的字符串,保存在address变量中
    address = ''.join(sys.argv[1:])
webbrowser.open('https://map.baidu.com/?newmap=1&ie=utf-8&s=s%26wd%3D'+address)
#命令行传入的参数,传入程序里面

分解1.为什么if>1?
sys.argv 变量保存了程序的文件名和命令行参数的列表。如果这个列表中不只有文件名,那么 len(sys.argv)的返回值就会大于 1,这意味着确实提供了命令行参数

分解2:为什么要sys.argv?他可以获取到一个列表,而不是字符串
我们来看看有什么用
import  sys
b = sys.argv[1:]

print(b)

使用上述控制台输入:python t2.py mapit 870 Valencia St, San Francisco, CA 94110 是个地址信息

控制台输出:['mapit', '870', 'Valencia', 'St,', 'San', 'Francisco,', 'CA', '94110']

 

分解3:为什么要' '.join(sys.argv[1:])?join后可以让列表变成字符串
控制台输入:python t4.py mapit 870 Valencia St, San Francisco, CA 94110
控制台输出:mapit 870 Valencia St, San Francisco, CA 94110

posted on 2019-08-21 17:16  宝宝萌  阅读(408)  评论(0编辑  收藏  举报