Python基础知识:1、引用和对象;2、可变数据类型和不可变数据类型;3、引用传递和值传递;4、深拷贝和浅拷贝;5、基本数据类型;6、关键字、标识符和内置函数;7、算术、赋值运算符等等。
相关学习推荐:python教程
Python基础知识:
1.执行脚本的两种方式
Python a.py 直接调用Python解释器执行文件
chomd +x a.py ./a.py #修改a.py文件的属性,为可执行,在用 ./ 执行a.py 文件
2、简述位、字节的关系
1bytes=8bit ,2**8=256,可以代表256中变化,
3、简述 ascii、unicode、utf-8、gbk 的关系
ascii 是最早美国用的标准信息交换码,把所有的字母的大小写,各种符号用 二进制来表示,共有256中,加入些拉丁文等字符,1bytes代表一个字符,
Unicode是为了统一世界各国语言的不用,统一用2个bytes代表一个字符,可以表达2**16=65556个,称为万国语言,特点:速度快,但浪费空间,
可以用在内存处理中,兼容了utf-8,gbk,ASCII,
utf-8 为了改变Unicode的这种缺点,规定1个英文字符用1个字节表示,1个中文字符用3个字节表示,特点;节省空间,速度慢,用在硬盘数据传输,网络数据传输,相比硬盘和网络速度,体现不出来的,
gbk 是中文的字符编码,用2个字节代表一个字符,
4、请写出 “李杰” 分别用 utf-8 和 gbk 编码所占的位数
utf-8 是3 bytes=24bit
gbk 是2bytes=16bit
5、Pyhton 单行注释和多行注释分别用什么?
单行注释 #
多行注释 """ """三个双引号或是三个单 引号把要解释的内容放中间, ‘’‘ ’’’
6、声明变量注意事项有那些?
万能避错规则,以小写字母开头命名,可以加上下划线,或者数字,
不能以Python的关键字命名,
能表明变量的意义
8、如何查看变量在内存中的地址?
z=
Salin selepas log masuk
9、执行 Python 程序时,自动生成的 .pyc 文件的作用是什么?
.pyc 是编译py文件后的二进制文件,用于加速运行
10、写代码
a.实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败!
name=
Salin selepas log masuk
b.实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次
while循环: count=
Salin selepas log masuk
for count in range(3) : name = input('name:').strip() pwd = input('pwd:').strip()if name=='seven' and pwd=='123' :print('ok')else:print('error') count += 1
Salin selepas log masuk
c.实现用户输入用户名和密码,当用户名为 seven 或 alex 且 密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次
while 循环 count =
Salin selepas log masuk
for count in range(3) : name = input('name: ') pwd = input('pwd: ')if name == 'seven' and pwd == '123' or name == 'alex' and pwd == '123':print('ok')else :print('error') count+=1
Salin selepas log masuk
11、写代码
a. 使用while循环实现输出2-3+4-5+6...+100 的和
count=
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
num=0count=1for count in range(100) :if count % 2 == 0 : num=num - countelse : num=num+countprint(num)
Salin selepas log masuk
c. 使用 while 循环实现输出 1,2,3,4,5, 7,8,9, 11,12
count=
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
d. 使用 while 循环实现输出 1-100 内的所有奇数
for i in range(101) :if i %2 != 0 :print(i)
Salin selepas log masuk
count=
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
e. 使用 while 循环实现输出 1-100 内的所有偶数
for i in range(100) :if i %2 == 0:print(i)
Salin selepas log masuk
count=
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
12、分别书写数字 5,10,32,7 的二进制表示
print(
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
print(
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
14、现有如下两个变量,请简述 n1 和 n2 是什么关系? n1 = 123 n2 = 123
n1,n2是连个不同的变量名,但值都一样,都指向了同一个内存地址,
16、现有如下两个变量,请简述 n1 和 n2 是什么关系? n1 = 123456 n2 = n1
n2赋值给n1.指向同一个内存地址,
17、如有一下变量 n1 = 5,请使用 int 的提供的方法,得到该变量最少可以用多少个二进制位表示?
n1=5
print(int.bit_length(n1)) 结果 3
18、布尔值分别有什么?
False .Ture ,或1 和0
20、写代码,有如下变量,请按照要求实现每个功能 name = " aleX"
a. 移除 name 变量对应的值两边的空格,并输入移除有的内容
print(name.strip())
Salin selepas log masuk
b. 判断 name 变量对应的值是否以 "al" 开头,并输出结果
print(name.startswith(
Salin selepas log masuk
c. 判断 name 变量对应的值是否以 "X" 结尾,并输出结果
print(name.endswith(
Salin selepas log masuk
d. 将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果
print(name.replace(
Salin selepas log masuk
e. 将 name 变量对应的值根据 “l” 分割,并输出结果。
print(name.split(
Salin selepas log masuk
g. 将 name 变量对应的值变大写,并输出结果
print(name.upper()) print(name.lower())
Salin selepas log masuk
i. 请输出 name 变量对应的值的第 2 个字符?
print(name[1
Salin selepas log masuk
j. 请输出 name 变量对应的值的前 3 个字符?
print(name[:3])
Salin selepas log masuk
k. 请输出 name 变量对应的值的后 2 个字符?
l. 请输出 name 变量对应的值中 “e” 所在索引位置?
print(name.index(
Salin selepas log masuk
21、字符串是否可迭代?如可以请使用 for 循环每一个元素?
依赖索引 name =
Salin selepas log masuk
for i in name:print(i)
Salin selepas log masuk
22、请用代码实现:利用下划线将列表的每一个元素拼接成字符串,li = ['alex', 'eric', 'rain']
print(
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
22、写代码,有如下列表,按照要求实现每一个功能 li = ['alex', 'eric', 'rain']
li = [
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
b. 列表中追加元素 “seven”,并输出添加后的列表
li.append(
Salin selepas log masuk
['alex', 'eric', 'rain', 'seven']
Salin selepas log masuk
c. 请在列表的第 1 个位置插入元素 “Tony”,并输出添加后的列表
li.insert(
Salin selepas log masuk
d. 请修改列表第 2 个位置的元素为 “Kelly”,并输出修改后的列表
li[
Salin selepas log masuk
Salin selepas log masuk
e. 请删除列表中的元素 “eric”,并输出修改后的列表
li = [ ['alex', 'rain'] 指名道姓的删除
Salin selepas log masuk
li = [
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
f. 请删除列表中的第 2 个元素,并输出删除的元素的值和删除元素后的列表
li = [ eric ['alex', 'rain']
Salin selepas log masuk
h. 请删除列表中的第 2 至 4 个元素,并输出删除元素后的列表
li = [ 'alex', 'eric', 'rain'] del li[ 1:] print(li)
Salin selepas log masuk
k. 请使用 enumrate 输出列表元素和序号(序号从 100 开始)
li = [
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
23、写代码,有如下列表,请按照功能要求实现每一个功能 li = ["hello", 'seven', ["mon", ["h", "kelly"], 'all'], 123, 446]
a. 请输出 “Kelly”
li = [
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
li[
Salin selepas log masuk
Salin selepas log masuk
24、写代码,有如下元组,按照要求实现每一个功能 tu = ('alex', 'eric', 'rain')
a. 计算元组长度并输出
tu = (
Salin selepas log masuk
Salin selepas log masuk
b. 获取元组的第 2 个元素,并输出
print(tu[
Salin selepas log masuk
e. 请使用 for、len、range 输出元组的索引
for i in range(len(tu)) :print(tu.index(tu[i]))
Salin selepas log masuk
f. 请使用 enumrate 输出元祖元素和序号(序号从 10 开始)
10 alex 11 eric 12 rain
Salin selepas log masuk
for k in enumerate(tu,10) :print(k)(10, 'alex')(11, 'eric')(12, 'rain')25、有如下变量,请实现要求的功能tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44])
Salin selepas log masuk
c. 请问 tu 变量中的"k2"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素 “Seven”
元组,不可以
d. 请问 tu 变量中的"k3"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素 “Seven”
列表,可以 tu = (
Salin selepas log masuk
26、字典
dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
for i in dic:print(i)
Salin selepas log masuk
b. 请循环输出所有的 value
for i in dic:print(dic[i])
Salin selepas log masuk
c. 请循环输出所有的 key 和 value
for i in dic: print(i,dic[i])
Salin selepas log masuk
d. 请在字典中添加一个键值对,"k4": "v4",输出添加后的字典
dic[
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
e. 请在修改字典中 “k1” 对应的值为 “alex”,输出修改后的字典
dic[
Salin selepas log masuk
f. 请在 k3 对应的值中追加一个元素 44,输出修改后的字典
dic[
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
g. 请在 k3 对应的值的第 1 个位置插入个元素 18,输出修改后的字典
dic[
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
27、转换
a. 将字符串 s = "alex" 转换成列表
s =
Salin selepas log masuk
b. 将字符串 s = "alex" 转换成元祖
s =
Salin selepas log masuk
b. 将列表 li = ["alex", "seven"] 转换成元组
li = [
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
c. 将元祖 tu = ('Alex', "seven") 转换成列表
tu = (
Salin selepas log masuk
Salin selepas log masuk
d. 将列表 li = ["alex", "seven"] 转换成字典且字典的 key 按照 10 开始向后递增dic={}for k,v in enumerate(li,10) :----li要放在前面,序号放在后面dic[k]=vprint(dic)
Salin selepas log masuk
27、转码n = "老男孩"
a. 将字符串转换成 utf-8 编码的字节,并输出,然后将该字节再转换成 utf-8 编码字符串,再输出
n = " 老男孩 " a=n.encode( 'utf-8') print(a) b=a.decode( 'utf-8') print(b)
Salin selepas log masuk
b. 将字符串转换成 gbk 编码的字节,并输出,然后将该字节再转换成 gbk 编码字符串,再输出
a=n.encode(
Salin selepas log masuk
28、求 1-100 内的所有数的和
count=
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
count=
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
29、元素分类
有如下值集合 [11,22,33,44,55,66,77,88,99,90],将所有大于 66 的值保存至字典的第一个 key 中,
将小于 66 的值保存至第二个 key 的值中。
即: {'k1': 大于 66 的所有值, 'k2': 小于 66 的所有值}
li=[
Salin selepas log masuk
Atas ialah kandungan terperinci python基础知识有哪些. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!