python理论知识选择题_python基础知识练习题(一)
1.執(zhí)行python腳本的兩種方式
答:
1. python file.py
2.在文件頭添加#!/usr/bin/python路徑 ./file.py
2.簡(jiǎn)述位、字節(jié)的關(guān)系
答:
電腦只識(shí)別0和1 每個(gè)0或1 為一位 每八位為一個(gè)字節(jié)
3.簡(jiǎn)述ascii、Unicode、utf-8、gbk關(guān)系
答:
ascii 由一個(gè)八位組成
unicode 萬(wàn)國(guó)碼最少十六位,沒(méi)有上限
utf-8 壓縮的萬(wàn)國(guó)碼,最少八位,沒(méi)有上限
gbk 中文,字母八位,中文十六位
4.請(qǐng)寫出“李杰”分別用utf-8和gbk編碼所占的位數(shù)
答:utf-8占三位,gbk占兩位
5.python單行注釋和多行注解分別用什么
答:#和"""
6.聲明變量注意事項(xiàng)有哪些
答:可以用字母、數(shù)字(不能開頭)、下劃線,不能用內(nèi)置關(guān)鍵字,最好用下劃線分割。
7.如果一下變量n1 =5 ,請(qǐng)使用int的提供的方法,得到該變量最小可以用多少個(gè)二進(jìn)制位表示?
答:101 三位
8.布爾值分別有什么?
答:Ture、False
9.閱讀代碼,請(qǐng)寫出執(zhí)行結(jié)果
a = "alex"
b = a.capitalize
print(a)
print(b)
答:alex、Alex
10.寫代碼,有如下變量,請(qǐng)按照要求實(shí)現(xiàn)每個(gè)功能
name = "aleX"
a.移除 name變量對(duì)應(yīng)的值兩邊的空格,并輸入移除后的內(nèi)容
答:print(name.strip())
b.判斷 name變量對(duì)應(yīng)的值是否以"al"開頭,并輸出結(jié)果
答:print(name.startswith('al'))
c.判斷 name變量對(duì)應(yīng)的值是否以"X"結(jié)尾,并輸出結(jié)果
答:print(name.endswith('X'))
d.將 name變量對(duì)應(yīng)的值中的 "l"替換為"p" ,并輸出結(jié)果
答:print(name.replace('l','p'))
e.將 name變量對(duì)應(yīng)的值根據(jù)"l"分割,并輸出結(jié)果
答:print(name.split('l'))
f.請(qǐng)問(wèn),上一題e分割之后得到值是什么類型(可選)?
答:列表
g.將 name變量對(duì)應(yīng)的值變大寫,并輸出結(jié)果
答:print(name.upper())
h.將 name變量對(duì)應(yīng)的值變小寫,并輸出結(jié)果
答:print(name.lower())
i.請(qǐng)輸出 name變量對(duì)應(yīng)的值得第2個(gè)字符?
答:print(name[1])
j.請(qǐng)輸出 name變量對(duì)應(yīng)的值得前3個(gè)字符?
答:print(name[0:2])
k.請(qǐng)輸出 name變量對(duì)應(yīng)的值的后2個(gè)字符?
答:print(name[2:4])
l.請(qǐng)輸出 name變量對(duì)應(yīng)的值中"e" 所在索引位置?
答:print(name.find('e'))
m.獲取子序列,僅不包含最后一個(gè)字符。如:oldboy則獲取oldbo;root則獲取roo
答:print(name[0:len(name)-1])
11.字符串是否可迭代對(duì)象?如可以請(qǐng)使用for循環(huán)每一個(gè)元素
答:可以,for v in str:
12.請(qǐng)用代碼實(shí)現(xiàn):
a.利用下劃線將列表的每一個(gè)元素拼接成字符串,li = "alexericrain"
答:v = "_".join(li)
b.利用下劃線將列表的每一個(gè)元素拼接成字符串,li = ['alex','eric','rain']
答:v = "_".join(li)
13.python2 中的range 和python3中的range的區(qū)別?
答:python2的 range(1,9)等于python3的list(range(1,9))
14.實(shí)現(xiàn)一個(gè)整數(shù)加法計(jì)算器:
如:
content = input('請(qǐng)輸入內(nèi)容:') #如:5+9 或 5+ 9或 5 + 9
答:
num = input('請(qǐng)輸入內(nèi)容:')
v = num.split('+')
for n in v:
n = int(n.strip()) + int(n.strip())
print(n)
15.計(jì)算用戶輸入的內(nèi)容中有幾個(gè)十進(jìn)制小數(shù)?幾個(gè)字母?
如:
content = input('請(qǐng)輸入內(nèi)容:') #如:asduiaf878123jkjsfd-213928
答:
content = input("請(qǐng)輸入內(nèi)容:")
int_num = 0
str_num = 0
for n in content:
if n in "0123456789":
int_num += 1
if n in "abcdefghijklmnopqrstuvwsyz":
str_num += 1
print('數(shù)字個(gè)數(shù)為:', int_num, '字母?jìng)€(gè)數(shù)為:', str_num)
16.簡(jiǎn)述int和9等數(shù)字 以及str 和"xxoo" 等字符串的關(guān)系
答:
int整數(shù)型可做運(yùn)算
str為字符串不能運(yùn)算
整數(shù)轉(zhuǎn)換成字符串
num = 9
num = str(num)
17.制作趣味模板程序
需求:等待用戶輸入名字、地點(diǎn)、愛好,根據(jù)用戶的名字和愛好進(jìn)行任意現(xiàn)實(shí)
如:敬愛可愛的xxx,最喜歡在xxx地方干xxx
答:
user_name = input("請(qǐng)輸入姓名:")
user_add = input("請(qǐng)輸入地址:")
user_like = input("請(qǐng)輸入愛好:")
print('敬愛可愛的%s,喜歡在%s地方干%s' % (user_name, user_add, user_like))
18.制作隨機(jī)驗(yàn)證碼,不區(qū)分大小寫
流程:
- 用戶執(zhí)行程序
- 給用戶顯示需要輸入的驗(yàn)證碼
- 用戶輸入的值
用戶輸入的值和顯示的值相同時(shí)實(shí)現(xiàn)正確信息;否則繼續(xù)生成隨機(jī)驗(yàn)證碼繼續(xù)等待用戶輸入
生成隨機(jī)驗(yàn)證碼代碼示例:
答:
def check_code():
import random
checkcode = ""
for i in range(4):
current = random.randrange(0, 4)
if current != i:
temp = chr(random.randint(65, 90))
else:
temp = random.randint(0, 9)
checkcode += str(temp)
return checkcode
code = check_code()
while True:
code = check_code()
print(code)
user_code = input("請(qǐng)輸入驗(yàn)證碼:").casefold()
code = code.casefold()
if user_code == code:
print("成功!")
break
19.開發(fā)敏感語(yǔ)句過(guò)濾程序,提示用戶輸入內(nèi)容,如果用戶輸入的內(nèi)容中包含特殊的字符:
如"蒼老師" "東京熱",則將內(nèi)容替換為 ***
答:
user_str = input("請(qǐng)輸入內(nèi)容:")
if "蒼老師" in user_str:
user_str = user_str.replace("蒼老師", "***")
else:
pass
if "京東熱" in user_str:
print(user_str.replace("京東熱", "***"))
else:
print(user_str)
20.制作表格
循環(huán)提示用戶輸入:用戶名、密碼、郵箱(要求用戶輸入的長(zhǎng)度不超過(guò)20個(gè)字符,如果超過(guò)則只有前20個(gè)字符有效)
如果用戶輸入q或Q表示不能再繼續(xù)輸入,將用戶輸入的內(nèi)容以表格形式打印
答:
v = []
while True:
user_name = input("請(qǐng)輸入用戶名:")
user_pwd = input("請(qǐng)輸入密碼:")
user_mail = input("請(qǐng)輸入郵箱:")
if len(user_name) > 20:
user_name = user_name[0:20]
if len(user_pwd) > 20:
user_pwd = user_pwd[0:20]
if len(user_mail) > 20:
user_mail = user_mail[0:20]
n = {"name": user_name, "pwd": user_pwd, "mail": user_mail}
v.append(n)
back = input("按q退出打印,任意鍵繼續(xù)輸入")
if back == "q":
user_str = "用戶名\t密碼\t郵箱"
print(user_str.expandtabs(20))
for lines in v:
user_str = "{0}\t{1}\t{2}".format(lines["name"], lines["pwd"], lines["mail"])
print(user_str.expandtabs(20))
break
總結(jié)
以上是生活随笔為你收集整理的python理论知识选择题_python基础知识练习题(一)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 如何在手机上给文件添加签名(如何对apk
- 下一篇: idle运行python_如何从IDLE