คำถามติดแท็ก string-formatting

โดยทั่วไปหมายถึงวิธีการต่างๆในการแสดงจำนวนชนิดข้อมูลที่แตกต่างกันโดยพลการลงในสตริง


12
จัดรูปแบบวันที่และเวลาลงในสตริงด้วยมิลลิวินาที
ฉันต้องการdatetimeสตริงจากวันที่ด้วยมิลลิวินาที รหัสนี้เป็นเรื่องปกติสำหรับฉันและฉันอยากเรียนรู้วิธีย่อให้สั้นลง from datetime import datetime timeformatted= str(datetime.utcnow()) semiformatted= timeformatted.replace("-","") almostformatted= semiformatted.replace(":","") formatted=almostformatted.replace(".","") withspacegoaway=formatted.replace(" ","") formattedstripped=withspacegoaway.strip() print formattedstripped


18
การจัดรูปแบบสตริงที่มีชื่อใน C #
มีวิธีการจัดรูปแบบสตริงตามชื่อมากกว่าตำแหน่งใน C # หรือไม่? ในงูหลามฉันสามารถทำบางอย่างเช่นตัวอย่างนี้ (ถูกขโมยลงคอจากที่นี่ ): >>> print '%(language)s has %(#)03d quote types.' % \ {'language': "Python", "#": 2} Python has 002 quote types. มีวิธีการทำเช่นนี้ใน C # หรือไม่? พูดเช่น: String.Format("{some_variable}: {some_other_variable}", ...); ความสามารถในการทำเช่นนี้โดยใช้ชื่อตัวแปรน่าจะดี แต่พจนานุกรมก็เป็นที่ยอมรับเช่นกัน

7
จัดรูปแบบสตริงผลลัพธ์การจัดตำแหน่งด้านขวา
ฉันกำลังประมวลผลไฟล์ข้อความที่มีพิกัด x, y, z 1 128 1298039 123388 0 2 .... ทุกบรรทัดถูกคั่นด้วย 3 รายการโดยใช้ words = line.split() หลังจากประมวลผลข้อมูลฉันจำเป็นต้องเขียนพิกัดกลับมาในไฟล์ txt อื่นเพื่อให้รายการในแต่ละคอลัมน์ชิดกัน (เช่นเดียวกับไฟล์อินพุต) ทุกบรรทัดประกอบด้วยพิกัด line_new = words[0] + ' ' + words[1] + ' ' words[2]. มีโปรแกรมจำพวกอย่างstd::setw()อื่นใน C ++ ที่อนุญาตให้ตั้งค่าความกว้างและการจัดแนวหรือไม่?



4
ใช้พารามิเตอร์ใน String.format ซ้ำหรือไม่
String hello = "Hello"; String.format("%s %s %s %s %s %s", hello, hello, hello, hello, hello, hello); hello hello hello hello hello hello ตัวแปร hello จำเป็นต้องทำซ้ำหลายครั้งในการเรียกใช้วิธีการจัดรูปแบบหรือมีเวอร์ชันชวเลขที่ให้คุณระบุอาร์กิวเมนต์หนึ่งครั้งเพื่อใช้กับ%sโทเค็นทั้งหมดหรือไม่

3
จัดรูปแบบจำนวนเต็มโดยใช้ Java String Format
ฉันสงสัยว่าเป็นไปได้หรือไม่โดยใช้เมธอด String.format ใน Java เพื่อให้จำนวนเต็มนำหน้าศูนย์? ตัวอย่างเช่น: 1 จะกลายเป็น 001 2 จะกลายเป็น 002 ... 11 จะกลายเป็น 011 12 จะกลายเป็น 012 ... 526 จะยังคงเป็น 526 ... ฯลฯ ในขณะนี้ฉันได้ลองใช้รหัสต่อไปนี้: String imageName = "_%3d" + "_%s"; for( int i = 0; i < 1000; i++ ){ System.out.println( String.format( imageName, i, "foo" ) ); } …

20
การจัดรูปแบบสตริงบางส่วน
เป็นไปได้ไหมที่จะจัดรูปแบบสตริงบางส่วนด้วยวิธีการจัดรูปแบบสตริงขั้นสูงซึ่งคล้ายกับsafe_substitute()ฟังก์ชันเทมเพลตสตริง ตัวอย่างเช่น: s = '{foo} {bar}' s.format(foo='FOO') #Problem: raises KeyError 'bar'

4
ใช้ StringFormat เพื่อเพิ่มสตริงในการโยง WPF XAML
ฉันมีแอปพลิเคชัน WPF 4 ที่มี TextBlock ซึ่งมีการผูกทางเดียวกับค่าจำนวนเต็ม (ในกรณีนี้อุณหภูมิเป็นองศาเซลเซียส) XAML มีลักษณะดังนี้: <TextBlock x:Name="textBlockTemperature"> <Run Text="{Binding CelsiusTemp, Mode=OneWay}"/></TextBlock> ใช้งานได้ดีสำหรับการแสดงค่าอุณหภูมิจริง แต่ฉันต้องการจัดรูปแบบค่านี้เพื่อให้รวม° C แทนที่จะเป็นเพียงตัวเลข (30 ° C แทนที่จะเป็นเพียง 30) ฉันอ่านเกี่ยวกับ StringFormat มาแล้วและฉันได้เห็นตัวอย่างทั่วไปหลายอย่างเช่นนี้: // format the bound value as a currency <TextBlock Text="{Binding Amount, StringFormat={}{0:C}}" /> และ // preface the bound value with a string and …

17
วิธีรับ 0-padded binary แทนจำนวนเต็มใน java?
ตัวอย่างเช่นสำหรับ1, 2, 128, 256ผลลัพธ์สามารถเป็น (16 หลัก): 0000000000000001 0000000000000010 0000000010000000 0000000100000000 ฉันเหนื่อย String.format("%16s", Integer.toBinaryString(1)); ทำให้มีช่องว่างสำหรับช่องว่างด้านซ้าย: ` 1' วิธีใส่0s สำหรับ padding. ไม่พบในฟอร์แมตเตอร์ มีวิธีอื่นที่จะทำได้หรือไม่? ป.ล. โพสต์นี้อธิบายถึงวิธีการจัดรูปแบบจำนวนเต็มด้วย 0-padding ด้านซ้าย แต่ไม่ใช่สำหรับการแทนค่าไบนารี


13
การจัดรูปแบบตัวเลขโดยการเติมด้วยศูนย์นำหน้าใน SQL Server
เรามีตาราง SQL เก่าที่ SQL Server 2000 ใช้เป็นเวลาเกือบ 10 ปี ในนั้นหมายเลขบัตรพนักงานของเราจะถูกเก็บเป็นchar(6)จากไป000001999999 ตอนนี้ฉันกำลังเขียนเว็บแอปพลิเคชันและต้องการจัดเก็บหมายเลขตราพนักงาน ในตารางใหม่ของฉันฉันอาจจะใช้ตัดสั้นและคัดลอกตารางเก่า แต่ฉันหวังสำหรับการถ่ายโอนข้อมูลที่ดีกว่า, ขนาดที่เล็กกว่า ฯลฯ โดยเพียงแค่การจัดเก็บintค่าจากการ1999999 ใน C # ฉันสามารถจัดรูปแบบintค่าสำหรับหมายเลขตราได้อย่างรวดเร็วโดยใช้ public static string GetBadgeString(int badgeNum) { return string.Format("{0:000000}", badgeNum); // alternate // return string.Format("{0:d6}", badgeNum); } ฉันจะแก้ไขแบบสอบถาม SQL แบบธรรมดานี้เพื่อจัดรูปแบบค่าที่ส่งคืนด้วยได้อย่างไร SELECT EmployeeID FROM dbo.RequestItems WHERE ID=0 ถ้าEmployeeIDเป็น 7135, 007135แบบสอบถามนี้ควรกลับ

19
จะแปลงมิลลิวินาทีเป็นรูปแบบที่มนุษย์อ่านได้อย่างไร?
ฉันต้องการแปลงจำนวนมิลลิวินาทีโดยพลการเป็นวันชั่วโมงนาทีวินาที ตัวอย่างเช่น 10 วัน 5 ชั่วโมง 13 นาที 1 วินาที

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.