文章目录
前言
本文介绍的是python基础入门,在介绍python的同时,也引进了相关的案例代码块,方便读者更好的阅读和理解。同时在文章的最开头首先介绍了一个对于初学者现阶段超纲的练习题,练习题的答案放在文章的最后面,感兴趣的朋友可以先做一下看能不能实现效果后在看我写的代码。
一、超纲练习题
阿凡提与国王比赛下棋,国王说要是自己输了的话阿凡提想要什么他都可以拿得出来。阿凡提说那就要点米吧,棋盘一共64个小格子,在第一个格子里放1粒米,第二个格子里放2粒米,第三个格子里放4粒米,第四个格子里放8粒米,以此类推,后面每个格子里的米都是前一个格子里的2倍,一直把64个格子都放满。需要多少粒米呢?
二、python字符串部分
字符串是 Python 中最常用的数据类型。我们可以使用引号(或”来创建字符串。
Python 访问字符串中的值Python 访问子字符串,可以使用方括号来截取字符串。
Python字符串格式化
Python 支持格式化字符串的输出。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。
在Python 中,字符串格式化使用与 C 中 sprintf 函数一样的语法。
符号 | 描述 |
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%f | 格式化浮点数字,可指定小数点后的精度 |
python转义字符
转义字符 | 描述 |
\(在行尾时) | 续行符 |
\\ | 反斜杠符号 |
\' | 单引号 |
\'' | 双引号 |
\e | 转义 |
\r | 回车 |
\f | 换页 |
\n | 换行 |
\000 | 空 |
三、python列表部分
序列是Python中最基本的数据结构。序列中的每个元素都分配个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
Python有6个序列的内置类型,但最常见的是列表和元组。
序列都可以进行的操作包括索引,切片,加,乘此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。
列表是最常用的Python数据类型,它可以以一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型。
列表中常用的函数
append()#更新列表中的内容
remove()#删除列表中的内容
extend()#增加列表中的内容
insert(a,b)#前面a是索引,后面b是添加的值
reversed#反转函数
注意下面的代码,运行和解释如下。
>>>list = [1,2,3,4,5,6]
>>>list[::-1]
#结果显示是[6,5,4,3,2,1]
四、python元组部分
Python 的元组与列表类似,不同之处在于元组的元素不能修改元组使用小括号,列表使用方括号。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可
元组中的元素可以是任何类型的python类型对象,甚至是列表元组也是序列
元组比列表的操作速度快。
元组的更新
>>> temp=(java','python','c')
>>> temp = temp[:1]+('c+ +',)+temp[1:]
>>> temp(java', 'c++','python','c')
元组的删除
>>>tu=(1,2,3,4)
>>> tu=tu[0],tu[2],tu[3]
>>> tu(1, 3, 4)
元组的一些函数
方法及描述 | 实例 |
len(tuple) 计算元组元素个数 | >>> tuple1 =('Google',"Run','Taobao') >>>len(tuple1) 3 |
max(tuple)返回元组中元素最大值 | >>> tuple2 =('5', '4', 8') >>>max(tuple2) 8 |
min(tuple)返回元组中元素最小值 | >>> tuple2 =('5',4,8') >>> min(tuple2) '4' |
tuple(seg) 将列表转换为元组 | >>> list1=['Google','Taobao',Run',Baidu'] >>> tuple1=tuple(list1) >>> tuple1('Google','Taobao',"Run'Baidu') |
附录
字符串数字拼接_对人友好
a = 2017
b = 'hello'
print(str(a)+b)
字符串数字拼接_对计算机友好
a = 2017
b = 'hello'
print(repr(a)+b)
输出数组.py
a = [1,2,3,4,5,6,7,8,9,0]
i = a[:]
print(i)
b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
p = b[-3:-1]
print(p)
输出列表.py
var = 'HELLO WORLD'
print("var[0]:",var[0])
print("var[1:7]:",var[1:7])
十年后的年龄和数字.py
name = input("请输入你现在的姓名:")
age = int(input("请输入你现在的年龄:"))
age2 = age +10
print('你十年后的姓名为%s' % name)
print('你十年后的年龄为%d' % age2)
阿凡提.py(本题可以简化为知道格子的个数,数上面的米粒数,这里是最开始的测试版)
sum = 0
for gezi in (1,2,3,4):
sum = sum + 2**(gezi-1)
print(sum)
阿凡提_改进版.py(这个版本将题改为输入格子的数量,只要按照上面的规律,就可以进行实现
sum = 0
cell_number = int(input("请输入你想创建的格子数:"))
cell_number2 = cell_number +1
numbers = []
for aug in range(1,cell_number2):
numbers.append(aug)
print(numbers)
for size in range(numbers[0],numbers[-1]+1,1):
sum = sum + 2**(size-1)
print(sum)