python序列及函数入门认识:

0. 我们根据列表、元组和字符串的共同特点,把它们三统称为什么?
   序列,因为他们有以下共同点:
1)都可以通过索引得到每一个元素

2)默认索引值总是从0开始(当然灵活的Python还支持负数索引)


3)可以通过分片的方法得到一个范围内的元素的集合


4)有很多共同的操作符(重复操作符、拼接操作符、成员关系操作符)

1. 请问分别使用什么BIF,可以把一个可迭代对象转换为列表、元组和字符串?
 list([iterable]) 把可迭代对象转换为列表
 tuple([iterable]) 把可迭代对象转换为元组
 str(obj)  把对象转换为字符串

序列的常见内置方法(BIF):

List()

Tuple()

Len()

Str()

Sorted()

List(reversed(tuple2))     //翻转

List(enumerate(tuple2))   //枚举

Zip(a,b)合并a.b各个位置上的元素为元组集合

2、所谓迭代,是重复反馈过程的活动,其目的通常是为了接近并到达所需的目标或结果。每一次对过程的重复被称为一次“迭代”,而每一次迭代得到的结果会被用来作为下一次迭代的初始值。

3、你有听说过DRY吗?
   DRY是程序员们公认的指导原则:Don't Repeat
Yourself.
快快武装你的思维吧,拿起函数,不要再去重复拷贝一段代码了!
4、都是重复一段代码,为什么我要使用函数(而不使用简单的拷贝黏贴)呢?
     使用函数:
0) 可以降低代码量(调用函数只需要一行,而拷贝黏贴需要N倍代码)
1) 可以降低维护成本(函数只需修改def部分内容,而拷贝黏贴则需要每一处出现的地方都作修改)
2) 使序更容易阅读

5、实现两个数的最大公约数的函数代码:

def gcd(x,y):

i=0

a=min(x,y)

b=max(x,y)

while i=0:

if b%a==0:

return a

i=1

else:

a=b%a

b=a

i=0

temp=input("请输入两个数:",end=" ")

x=input("x=",end="")

y=input("y=")

print("x和y的最大公约数为:",gcd(x,y))

1、 实现十进制到二进制转换的函数:

def bin2(x):

i=0

q=""

while i==0:

a=x%2

b=x//2

q=q+str(a)

if b!=0:

x=b

i=0

else:

break

xx=list(reversed(q))

yy=len(xx)

m=0

qq=""

while m<=yy-1:

qq=qq+xx[m]

m=m+1

qqq="ob"+qq

return qqq

while True:

temp=input("输入一个数字:")

temp=int(temp)

print("该数据的二进制表示为:",bin2(temp))

最新文章

  1. 图解JVM的类加载机制(详细版)
  2. ios 开发中使用SVN管理代码
  3. Visual C# 代码段
  4. C语言中,定义的含义?声明的含义?它们之间的区别是什么?
  5. weapp微信小程序初探demo
  6. WeX5学习笔记-创建本地APP相关问题
  7. 【ASP.NET 基础】表单和控件
  8. HDU 5651 xiaoxin juju needs help (组合数)
  9. 详解JMeter函数和变量
  10. python基本数据类型——int
  11. easyui dialog 中嵌入html页面
  12. 链接文本在a标签内标签里也可以用driver.find_element_by_link_text
  13. 学习JAVA的几大优处
  14. Spring注解@Configuration和Java Config
  15. NBC朴素贝叶斯分类器 ————机器学习实战 python代码
  16. poj-2823(单调队列)
  17. [jzoj]1417.数学题
  18. linux内核分析程序破解实践报告
  19. [转] Linux有问必答:如何修复“sshd error: could not load host key”
  20. 为DataGridView增加鼠标滚轮功能

热门文章

  1. scp出现ssh port 22: Connection refused 问题解决具体步骤
  2. 【SPJ6285 NGM2 - Another Game With Numbers】 题解
  3. HIDU 2094
  4. flume data to hdfs
  5. Python书单
  6. 解决MyEclipse JAVA EE无法识别Base64问题
  7. OpenID Connect Core 1.0(二)ID Token
  8. oracle查询相关注意点
  9. kali linux 安装 Mysql Can&#39;t read from messagefile 报错解决方案
  10. 2018 kali linux install tools