第一次考試

一.基礎題
1.簡述變量命名規範
用下劃綫數字英文任意組合,不能以數字開頭

2.字節和位的關係
1位 = 8個字節

3.'二哥'使用 utf-8編碼時, 占的位數和字節, 是多少? 使用 gbk編碼時,占的位數
utf-8:6位 48個字節
gbk:4位 32個字節

4.默寫字符串的12個功能,並描述其作用
1.endswith 檢測以什麽結尾
2.startwith 檢測以什麽開頭
3.len 檢測長度
4.strip 刪除前後空格
5.rstrip 刪除左邊空格
6.lstrip 刪除右邊空格
7.split 用什麽分開
8.center 用來居中
9.isdigit 檢測是否是數字
10.isalpha 檢測是否是字母
11.isalnum 堅持是否是數字和字母
12.fin 尋找字符串

5.數字,字符串,列表,元祖,字典對應的bool值的False分別是什麽
數字: 0
字符串: ''
列表:[]
元祖:()
字典:{}

6.書寫python2 與python3中的三個不同
python2:print abc,xrange(),raw_input
python3:print'abc',range(),input

9.轉化題
int與str之間如何轉化, 轉換的結果是什麽?有沒有條件?
str ----> int
int(str)
int ----> str
str(int)
數字
字符串
條件是必須是數字形式的字符串

int與bool之間如何轉化, 轉換的結果是什麽?有沒有條件?
int ----> bool
bool(int)
bool ----> int
int(bool)
0是False 其餘的都是True
True是0 False是1
沒有

str與bool之間如何轉化, 轉換的結果是什麽?有沒有條件?
str ----> bool
bool(str)
bool ----> str
str(bool)
''是False 其餘的都是True
False是'False’True是'True'
沒有

str與list之間如何轉化
str ----> list
split
lst ----> str
join
'''
#7.寫代碼,有如下列表,利用切片實現每一個功能
li = [1, 3, 2, 'a', 4, 'b', 5, 'c']
#1).通過對li列表的切片形成新的列表l3,l3=[1, 2, 4, 5]
l3 = li[0::2]
#2).通過對li列表的切片形成新的列表l4,l4=[3, 'a', 'b']
l4 = li[1:6:2]
#3).通過對li列表的切片形成新的列表l5,l5=['c']
l5 = li[-1]
#4).通過對li列表的切片形成新的列表l6,l6=['b', 'a', 3]
l6 = li[-3::-2]

#8.組合嵌套題
#a.寫代碼,有如下列表,按照要求實現每一個功能
#(每個都是一行代碼實現)
lis = [['k', ['qwe', 20, {'k1': ['tt', 3, '1']}, 89], 'ab']]
#1).將列表lis中的'tt'變成大寫
lis[0][1][2]['k1'][0] = 'TT'
lis[0][1][2]['k1'][0].upper()

#2).將列表中的數字3變成字符串'100'
lis[0][1][2]['k1'][1] = 100
lis[0][1][2]['k1'][1] = lis[0][1][2]['k1'][1] + 97

#3).將列表中的數字1變成字符串'101'
lis[0][1][2]['k1'][2] = '101'
lis[0][1][2]['k1'][2] = str(int(lis[0][1][2]['k1'][2]) + 100)

#b.寫代碼,有如下字典,按照要求實現每一個功能
dic = {'k1': 'v1', 'k2': ['alex', 'sb'], (1, 2, 3, 4, 5): {'k3': ['2', 100, 'wer']}}
#1).將'k2'對應的值的最後面添加一個元素'23'
dic['k2'].append('23')

#2).將'k2'對應的值的第一個位置插入一個元素'a'
dic['k2'].insert(0, 'a')

#3).將(1, 2, 3, 4, 5)對應的值添加一個鍵值對'k4', 'v4'
dic[(1, 2, 3, 4, 5)].setdefault('k4', 'v4')

#4).將(1, 2, 3, 4, 5)對應的值添加一個鍵值對(1,2,3), 'ok'
dic[(1, 2, 3, 4, 5)].setdefault((1, 2, 3), 'ok')

#5).將'k3'對應的值的'wer'改爲'qq'
dic[(1, 2, 3, 4, 5)]['k3'][2] = 'qq'

# 10.實現下列結果
# 1).有列表li = ['alex', 'wusir', 'rain']通過操作該列表構成一個字符串
# s = 'alexwusirrain'
li = ['alex', 'wusir', 'rain']
s = ''.join(li)
print(s)

#2).有列表li = ['alex', 'wusir', 'rain']通過操作該列表構成一個字符串
# s = 'alex*wusir*rain'
li = ['alex', 'wusir', 'rain']
s = '*'.join(li)
print(s)

#3).有字符串s = 'alexwusirrain'通過操作該字符串構成一個列表
#li = ['a', 'exwusirlex']
s = 'alexwusirrain'
li = s.replace('rain', 'lex')
print(li)

#4).有字符串s = 'alex wusir'通過操作該字符串構成一個列表
# li = ['alex', 'wusir']
s = 'alex wusir'
li = s.split()
print(li)

#5).有字符串s = 'alex'通過操作該字符串構成一個字符串
#s1 = 'alex'
s = 'alex'
s1 = s
print(s1)
'''
#11.分別使用while循環,和for循環打印1-2+3-4+5....+99的結果
sum = 0
count = 1
while count < 100:
    if count % 2 == 1:
        sum += count
    else:
        sum -= count
    count += 1
print(sum)

sum = 0
for i in range(1, 100):
    if i % 2 == 1:
        sum += i
    else:
        sum -= i
print(sum)

#12.使用range打印100,98....1,0
for i in range(100, -1, -1):
    print(i)

#13.計算用戶輸入内容,中索引為奇數,并且and,對應的元素為數字的isdigit()個數(沒有個數則為零)
count = 0
content = input('>>>')
for i in range(len(content)):
    if i % 2 == 1 and content[i].isdigit():
        count += 1
print(count)

#14.補充代碼(從已有的代碼下面繼續寫):
#有如下值li = [11, 22, 33, 44, 55, 77, 88, 99, 90], 將所有大於66的值保存至字典第一個key中, 將小於66的值保存至第二個key
#的值中。
li = [11, 22, 33, 44, 55, 77, 88, 99, 90]
result = {}
for row in li:
    if row > 66:
        if 'key1' not in result:
            result['key1'] = []
        result['key1'].append(row)
    else:
        if 'key2' not in result:
            result['key2'] = []
        result['key2'].append(row)
print(result)

#15.查找列表li中的元素,移除每個元素的空格,找出以'A'或者'a'開頭,並以'c'結尾的所有元素,並添加到一個新列表中,最後循環打印這個新列表
li = ['taibai', 'alexC', 'AbC', 'egon', 'Ritian', 'Wusir', 'aqc']
new = []
for i in li:
    if i.strip().upper().startswith('A') and i.strip().upper().endswith('C'):
        new.append(i)
        print(i)
print(new)

#16.實現一個整數加法計算器:
# 如:content = input('請輸入内容:')如用戶輸入: 5 + 8 + 7...(最少輸入兩個數相加),然後進行分隔再進行計算,將最後的計算
# 結果添加到此字典中(替換 None:)
#dic = {'最終計算結果' : None}
content = input('請輸入内容:').strip()
content_list = content.split('+')
sum = 0
for i in content_list:
    sum += int(i)
print(sum)

#17.寫程序:模擬公司hr錄入員工賬號密碼的程序
#1).員工的賬號密碼儲存在這種數據類型中:
# user_list = [
#     {'username': 'barry', 'password': '1234'},
#     {'username': 'alex', 'password': 'asdf'},
#      .......
#             ]
#2).非法字符模板: board =['張三', '李小四', '王二麻子']
#3).Hr輸入用戶名, 密碼(可持續輸入, 如果想終止程序, 那就在輸入 Q 或者 q退出程序 break),在Hr輸入用戶名時,檢測用戶名是
#否有board裏面的非法字符, 如有非法字符, 則將非法字符替換成同數量的*(如王二麻子替換成****),然後添加到user_list中,如
#果沒有非法字符,則直接添加到user_list中, 每次添加成功后, 打印出剛添加的用戶名,密碼。
user_list = []
board =['張三', '李小四', '王二麻子']
while 1:
    username = input('用戶名:')
    if username.upper() == 'Q':
        break
    password = input('密碼:')
    for i in board:
        if i in username:
            username = username.replace(i, '*' * len(i))
    user_list.append({'username': username, 'password': password})
    print({'username': username, 'password': password})
    print(user_list)

猜你喜欢

转载自www.cnblogs.com/yvz5414/p/10204163.html
今日推荐