|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
py新手中的新手,然后有一个工作,想用py来尝试一下,经过不断的百度和摸索,虽然写出了,但是有一个地方很不懂,很不懂很不懂,越来越蒙逼,下面问问题了
代码很简单,就是通过urllib来访问地址,然后地址中有一个参数是通过csv文件导入的
import csv
import urllib.request
import types
def code():
with open(r"D:\py\test.csv","r") as f:
reader = csv.reader(f)
num = [row[0] for row in reader]
print(num)
print(type(num) == type(1))
return num
def geturl():
for num in code():
print(num)
url_str = "http://m.maoyan.com/shows/%s?_v_=yes#" % num
print(url_str)
req = urllib.request.urlopen(url_str).read()
html = req.decode("utf-8")
print(html)
geturl()
问题:
1、用%为什么是%s,而不是%d,num = [row(0) for row in reader]不是一个列表吗?用的types打印出来的是false啊?
2、如何判断是用%s还是%d,等等?
1.既然你知道num是list类型,那么你跟type(1)比肯定都是false的,%d只限用于整形数字,而%s可以用于list,tuple包括数字也是可以用%s进行格式化,用%s避免抛出异常
2.type(num) == type(1)用类似你这一句去判断就可以了
|
|