第一次考試
Posted yvz5414
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第一次考試相关的知识,希望对你有一定的参考价值。
一.基礎題
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)
以上是关于第一次考試的主要内容,如果未能解决你的问题,请参考以下文章