python结构计算书_python计算书页码的统计数字问题实例

本文实例讲述了python计算书页码的统计数字问题,是Python程序设计中一个比较典型的应用实例。分享给大家供大家参考。具体如下:

问题描述:对给定页码n,计算出全部页码中分别用到多少次数字0,1,2,3,4...,9

实例代码如下:

def count_num1(page_num):

num_zero = 0

num_one = 0

num_two = 0

num_three = 0

num_four = 0

num_five = 0

num_six = 0

num_seven = 0

num_eight = 0

num_nine = 0

page_list = range(1,page_num + 1)

for page in page_list:

page = str(page)

num_zero += page.count(‘0‘)

num_one += page.count(‘1‘)

num_two += page.count(‘2‘)

num_three += page.count(‘3‘)

num_four += page.count(‘4‘)

num_five += page.count(‘5‘)

num_six += page.count(‘6‘)

num_seven += page.count(‘7‘)

num_eight += page.count(‘8‘)

num_nine += page.count(‘9‘)

result = [num_zero,num_one,num_two,num_three,num_four,num_five,num_six,num_seven,num_eight,num_nine]

return result

print count_num1(13)

上面这段代码略显臃肿,所以改了下代码。

改后的代码如下:

def count_num2(page_num):

page_list = range(1,page_num + 1)

result = [0 for i in range(10)]

for page in page_list:

page = str(page)

for i in range(10):

temp = page.count(str(i))

result[i] += temp

return result

print count_num2(13)

本文实例测试运行环境为Python2.7.6

程序输出结果为:

[1, 6, 2, 2, 1, 1, 1, 1, 1, 1]

希望本文所述对大家的Python程序设计有所帮助。

原文:http://www.jb51.net/article/55674.htm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
后台采用apache服务器下的cgi处理c语言做微信小程序后台逻辑的脚本映射。PC端的服务器和客户端都是基于c语言写的。采用mysql数据库进行用户数据和聊天记录的存储。.zip C语言是一种广泛使用的编程语言,它具有高效、灵活、可移植性强等特点,被广泛应用于操作系统、嵌入式系统、数据库、编译器等领域的开发。C语言的基本语法包括变量、数据类型、运算符、控制结构(如if语句、循环语句等)、函数、指针等。下面详细介绍C语言的基本概念和语法。 1. 变量和数据类型 在C语言中,变量用于存储数据,数据类型用于定义变量的类型和范围。C语言支持多种数据类型,包括基本数据类型(如int、float、char等)和复合数据类型(如结构体、联合等)。 2. 运算符 C语言中常用的运算符包括算术运算符(如+、、、/等)、关系运算符(如==、!=、、=、<、<=等)、逻辑运算符(如&&、||、!等)。此外,还有位运算符(如&、|、^等)和指针运算符(如、等)。 3. 控制结构 C语言中常用的控制结构包括if语句、循环语句(如for、while等)和switch语句。通过这些控制结构,可以实现程序的分支、循环和多路选择等功能。 4. 函数 函数是C语言中用于封装代码的单元,可以实现代码的复用和模块化。C语言中定义函数使用关键字“void”或返回值类型(如int、float等),并通过“{”和“}”括起来的代码块来实现函数的功能。 5. 指针 指针是C语言中用于存储变量地址的变量。通过指针,可以实现对内存的间接访问和修改。C语言中定义指针使用星号()符号,指向数组、字符串和结构体等数据结构时,还需要注意数组名和字符串常量的特殊性质。 6. 数组和字符串 数组是C语言中用于存储同类型数据的结构,可以通过索引访问和修改数组中的元素。字符串是C语言中用于存储文本数据的特殊类型,通常以字符串常量的形式出现,用双引号("...")括起来,末尾自动添加'\0'字符。 7. 结构体和联合 结构体和联合是C语言中用于存储不同类型数据的复合数据类型。结构体由多个成员组成,每个成员可以是不同的数据类型;联合由多个变量组成,它们共用同一块内存空间。通过结构体和联合,可以实现数据的封装和抽象。 8. 文件操作 C语言中通过文件操作函数(如fopen、fclose、fread、fwrite等)实现对文件的读写操作。文件操作函数通常返回文件指针,用于表示打开的文件。通过文件指针,可以进行文件的定位、读写等操作。 总之,C语言是一种功能强大、灵活高效的编程语言,广泛应用于各种领域。掌握C语言的基本语法和数据结构,可以为编程学习和实践打下坚实的基础。
如果你想将网址和页码作为参数传递给类的初始化函数 `__init__()`,可以按照以下方式修改代码: ```python import requests from bs4 import BeautifulSoup class DamaiSpider: def __init__(self, keyword, num_pages): self.keyword = keyword self.num_pages = num_pages self.base_url = f"https://search.damai.cn/search.htm?keyword={keyword}" self.headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36" } def get_concert_info(self, page): url = f"{self.base_url}&currPage={page}" response = requests.get(url, headers=self.headers) soup = BeautifulSoup(response.text, "html.parser") concert_list = [] concert_items = soup.find_all("div", class_="item") for item in concert_items: concert_title = item.find("span", class_="txt-black").text.strip() concert_time = item.find("span", class_="txt-dmt-gray").text.strip() concert_location = item.find("div", class_="venueitem").text.strip() concert_info = { "title": concert_title, "time": concert_time, "location": concert_location } concert_list.append(concert_info) return concert_list def run(self): all_concert_info = [] for page in range(1, self.num_pages + 1): concert_info_list = self.get_concert_info(page) all_concert_info.extend(concert_info_list) return all_concert_info if __name__ == "__main__": spider = DamaiSpider(keyword="演唱会", num_pages=5) concert_info_list = spider.run() for concert in concert_info_list: print(concert) ``` 在这个示例中,我们创建了一个名为 `DamaiSpider` 的类。在类的初始化函数 `__init__()` 中,我们接受 `keyword` 和 `num_pages` 作为参数,并将其保存为类的属性。然后,在 `get_concert_info()` 方法中,我们使用保存的关键字和页码来构造URL。类的 `run()` 方法用于执行爬虫逻辑,它循环调用 `get_concert_info()` 方法来获取演唱会信息,并将所有信息存储在一个列表中。 在主程序中,我们创建了 `DamaiSpider` 类的实例,并传入关键字和要爬取的页数。然后调用 `run()` 方法来运行爬虫并获取演唱会信息。最后,我们遍历演唱会信息列表并打印出来。 请注意,在示例代码中,我们将关键字设置为"演唱会",页码设置为5。你可以根据自己的需求修改这些参数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值